]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - server/controllers/webfinger.ts
Fix CSP issue on WebFinger service (#2541)
[github/Chocobozzz/PeerTube.git] / server / controllers / webfinger.ts
CommitLineData
9878d1ac 1import * as cors from 'cors'
350e31d6 2import * as express from 'express'
3fd3ab2d
C
3import { asyncMiddleware } from '../middlewares'
4import { webfingerValidator } from '../middlewares/validators'
350e31d6
C
5
6const webfingerRouter = express.Router()
7
9878d1ac
L
8webfingerRouter.use(cors())
9
51548b31 10webfingerRouter.get('/.well-known/webfinger',
a2431b7d 11 asyncMiddleware(webfingerValidator),
350e31d6
C
12 webfingerController
13)
14
15// ---------------------------------------------------------------------------
16
17export {
18 webfingerRouter
19}
20
21// ---------------------------------------------------------------------------
22
dae86118 23function webfingerController (req: express.Request, res: express.Response) {
0374b6b5 24 const actor = res.locals.actorUrl
350e31d6
C
25
26 const json = {
27 subject: req.query.resource,
50d6de9c 28 aliases: [ actor.url ],
350e31d6
C
29 links: [
30 {
31 rel: 'self',
165cdc75 32 type: 'application/activity+json',
50d6de9c 33 href: actor.url
350e31d6
C
34 }
35 ]
36 }
37
0374b6b5 38 return res.json(json)
350e31d6 39}