]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - server/controllers/webfinger.ts
Use raw sql for comments
[github/Chocobozzz/PeerTube.git] / server / controllers / webfinger.ts
CommitLineData
41fb13c3
C
1import cors from 'cors'
2import express from 'express'
d43c6b1f 3import { WEBSERVER } from '@server/initializers/constants'
3fd3ab2d
C
4import { asyncMiddleware } from '../middlewares'
5import { webfingerValidator } from '../middlewares/validators'
350e31d6
C
6
7const webfingerRouter = express.Router()
8
9878d1ac
L
9webfingerRouter.use(cors())
10
51548b31 11webfingerRouter.get('/.well-known/webfinger',
a2431b7d 12 asyncMiddleware(webfingerValidator),
350e31d6
C
13 webfingerController
14)
15
16// ---------------------------------------------------------------------------
17
18export {
19 webfingerRouter
20}
21
22// ---------------------------------------------------------------------------
23
dae86118 24function webfingerController (req: express.Request, res: express.Response) {
0374b6b5 25 const actor = res.locals.actorUrl
350e31d6
C
26
27 const json = {
28 subject: req.query.resource,
50d6de9c 29 aliases: [ actor.url ],
350e31d6
C
30 links: [
31 {
32 rel: 'self',
165cdc75 33 type: 'application/activity+json',
50d6de9c 34 href: actor.url
d43c6b1f
C
35 },
36 {
37 rel: 'http://ostatus.org/schema/1.0/subscribe',
38 template: WEBSERVER.URL + '/remote-interaction?uri={uri}'
350e31d6
C
39 }
40 ]
41 }
42
0374b6b5 43 return res.json(json)
350e31d6 44}