From: Chocobozzz Date: Thu, 30 Nov 2017 12:15:25 +0000 (+0100) Subject: Fix activitypub check headers X-Git-Tag: v0.0.1-alpha~157 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=1b5b10d13152d704d2396a1e53d56aba1a8e7e03;p=oweals%2Fpeertube.git Fix activitypub check headers --- diff --git a/server/initializers/constants.ts b/server/initializers/constants.ts index 8f278fb0b..4f63cbb02 100644 --- a/server/initializers/constants.ts +++ b/server/initializers/constants.ts @@ -220,11 +220,11 @@ const VIDEO_MIMETYPE_EXT = { const SERVER_ACCOUNT_NAME = 'peertube' const ACTIVITY_PUB = { - ACCEPT_HEADERS: [ - 'application/activity+json, application/ld+json', - 'application/ld+json; profile="https://www.w3.org/ns/activitystreams"' + POTENTIAL_ACCEPT_HEADERS: [ + 'application/activity+json', + 'application/ld+json' ], - ACCEPT_HEADER: '', + ACCEPT_HEADER: 'application/activity+json, application/ld+json', PUBLIC: 'https://www.w3.org/ns/activitystreams#Public', COLLECTION_ITEMS_PER_PAGE: 10, FETCH_PAGE_LIMIT: 100, @@ -235,7 +235,6 @@ const ACTIVITY_PUB = { MAGNET: [ 'application/x-bittorrent;x-scheme-handler/magnet' ] } } -ACTIVITY_PUB.ACCEPT_HEADER = ACTIVITY_PUB.ACCEPT_HEADERS[0] // --------------------------------------------------------------------------- diff --git a/server/middlewares/activitypub.ts b/server/middlewares/activitypub.ts index 7db84de97..485645720 100644 --- a/server/middlewares/activitypub.ts +++ b/server/middlewares/activitypub.ts @@ -37,7 +37,7 @@ async function checkSignature (req: Request, res: Response, next: NextFunction) function executeIfActivityPub (fun: RequestHandler | RequestHandler[]) { return (req: Request, res: Response, next: NextFunction) => { - if (req.accepts(ACTIVITY_PUB.POTENTIAL_ACCEPT_HEADERS) === false) { + if (!req.accepts(ACTIVITY_PUB.POTENTIAL_ACCEPT_HEADERS)) { return next() } diff --git a/server/tests/utils/activitypub.ts b/server/tests/utils/activitypub.ts new file mode 100644 index 000000000..cf3c1c3b3 --- /dev/null +++ b/server/tests/utils/activitypub.ts @@ -0,0 +1,15 @@ +import * as request from 'supertest' + +function makeActivityPubGetRequest (url: string, path: string) { + return request(url) + .get(path) + .set('Accept', 'application/activity+json,text/html;q=0.9,\\*/\\*;q=0.8') + .expect(200) + .expect('Content-Type', /json/) +} + +// --------------------------------------------------------------------------- + +export { + makeActivityPubGetRequest +}