aboutsummaryrefslogtreecommitdiffhomepage
path: root/server
diff options
context:
space:
mode:
authorChocobozzz <florian.bigard@gmail.com>2017-11-29 11:34:44 +0100
committerChocobozzz <florian.bigard@gmail.com>2017-11-29 11:34:44 +0100
commit165cdc75bf1942ed687f78094c2bd366839a7c99 (patch)
tree4b174114bf175603202c3672c5dc04c22582701d /server
parent14063e965672ed724b7bfea6686acc14923e07a7 (diff)
downloadPeerTube-165cdc75bf1942ed687f78094c2bd366839a7c99.tar.gz
PeerTube-165cdc75bf1942ed687f78094c2bd366839a7c99.tar.zst
PeerTube-165cdc75bf1942ed687f78094c2bd366839a7c99.zip
Fix well known and json parser with mastodon
Diffstat (limited to 'server')
-rw-r--r--server/controllers/webfinger.ts1
-rw-r--r--server/initializers/constants.ts7
-rw-r--r--server/initializers/database.ts2
-rw-r--r--server/middlewares/activitypub.ts4
-rw-r--r--server/models/video/video.ts7
5 files changed, 19 insertions, 2 deletions
diff --git a/server/controllers/webfinger.ts b/server/controllers/webfinger.ts
index 1cea513a1..78e5dee79 100644
--- a/server/controllers/webfinger.ts
+++ b/server/controllers/webfinger.ts
@@ -27,6 +27,7 @@ function webfingerController (req: express.Request, res: express.Response, next:
27 links: [ 27 links: [
28 { 28 {
29 rel: 'self', 29 rel: 'self',
30 type: 'application/activity+json',
30 href: account.url 31 href: account.url
31 } 32 }
32 ] 33 ]
diff --git a/server/initializers/constants.ts b/server/initializers/constants.ts
index 82373ba84..6d8aa7332 100644
--- a/server/initializers/constants.ts
+++ b/server/initializers/constants.ts
@@ -219,7 +219,11 @@ const VIDEO_MIMETYPE_EXT = {
219const SERVER_ACCOUNT_NAME = 'peertube' 219const SERVER_ACCOUNT_NAME = 'peertube'
220 220
221const ACTIVITY_PUB = { 221const ACTIVITY_PUB = {
222 ACCEPT_HEADER: 'application/ld+json; profile="https://www.w3.org/ns/activitystreams"', 222 ACCEPT_HEADERS: [
223 'application/activity+json, application/ld+json',
224 'application/ld+json; profile="https://www.w3.org/ns/activitystreams"'
225 ],
226 ACCEPT_HEADER: '',
223 PUBLIC: 'https://www.w3.org/ns/activitystreams#Public', 227 PUBLIC: 'https://www.w3.org/ns/activitystreams#Public',
224 COLLECTION_ITEMS_PER_PAGE: 10, 228 COLLECTION_ITEMS_PER_PAGE: 10,
225 FETCH_PAGE_LIMIT: 100, 229 FETCH_PAGE_LIMIT: 100,
@@ -230,6 +234,7 @@ const ACTIVITY_PUB = {
230 MAGNET: [ 'application/x-bittorrent;x-scheme-handler/magnet' ] 234 MAGNET: [ 'application/x-bittorrent;x-scheme-handler/magnet' ]
231 } 235 }
232} 236}
237ACTIVITY_PUB.ACCEPT_HEADER = ACTIVITY_PUB.ACCEPT_HEADERS[0]
233 238
234// --------------------------------------------------------------------------- 239// ---------------------------------------------------------------------------
235 240
diff --git a/server/initializers/database.ts b/server/initializers/database.ts
index 9b9a81e26..90dbba5b9 100644
--- a/server/initializers/database.ts
+++ b/server/initializers/database.ts
@@ -66,6 +66,8 @@ const sequelize = new Sequelize(dbname, username, password, {
66 operatorsAliases: false, 66 operatorsAliases: false,
67 67
68 logging: (message: string, benchmark: number) => { 68 logging: (message: string, benchmark: number) => {
69 if (process.env.NODE_DB_LOG === 'false') return
70
69 let newMessage = message 71 let newMessage = message
70 if (isTestInstance() === true && benchmark !== undefined) { 72 if (isTestInstance() === true && benchmark !== undefined) {
71 newMessage += ' | ' + benchmark + 'ms' 73 newMessage += ' | ' + benchmark + 'ms'
diff --git a/server/middlewares/activitypub.ts b/server/middlewares/activitypub.ts
index 061b2dddc..34386e76d 100644
--- a/server/middlewares/activitypub.ts
+++ b/server/middlewares/activitypub.ts
@@ -37,10 +37,12 @@ async function checkSignature (req: Request, res: Response, next: NextFunction)
37 37
38function executeIfActivityPub (fun: RequestHandler | RequestHandler[]) { 38function executeIfActivityPub (fun: RequestHandler | RequestHandler[]) {
39 return (req: Request, res: Response, next: NextFunction) => { 39 return (req: Request, res: Response, next: NextFunction) => {
40 if (req.header('Accept') !== ACTIVITY_PUB.ACCEPT_HEADER) { 40 if (ACTIVITY_PUB.ACCEPT_HEADERS.indexOf(req.header('Accept')) === -1) {
41 return next() 41 return next()
42 } 42 }
43 43
44 logger.debug('ActivityPub request for %s.', req.url)
45
44 if (Array.isArray(fun) === true) { 46 if (Array.isArray(fun) === true) {
45 return eachSeries(fun as RequestHandler[], (f, cb) => { 47 return eachSeries(fun as RequestHandler[], (f, cb) => {
46 f(req, res, cb) 48 f(req, res, cb)
diff --git a/server/models/video/video.ts b/server/models/video/video.ts
index 3f416d04c..f3469c1de 100644
--- a/server/models/video/video.ts
+++ b/server/models/video/video.ts
@@ -616,6 +616,13 @@ toActivityPubObject = function (this: VideoInstance) {
616 }) 616 })
617 } 617 }
618 618
619 // Add video url too
620 url.push({
621 type: 'Link',
622 mimeType: 'text/html',
623 url: CONFIG.WEBSERVER.URL + '/videos/watch/' + this.uuid
624 })
625
619 const videoObject: VideoTorrentObject = { 626 const videoObject: VideoTorrentObject = {
620 type: 'Video' as 'Video', 627 type: 'Video' as 'Video',
621 id: this.url, 628 id: this.url,