unoffical wafrn mirror wafrn.net
atproto social-network activitypub
at development 21 lines 610 B view raw
1import { Request, Response, NextFunction } from 'express' 2import jwt from 'jsonwebtoken' 3import { completeEnvironment } from './backendOptions.js' 4 5export default function optionalAuthentication(req: Request, res: Response, next: NextFunction) { 6 try { 7 const authHeader = req.headers.authorization 8 const token = authHeader?.split(' ')[1] 9 10 jwt.verify(token!, completeEnvironment.jwtSecret, (err: any, jwtData: any) => { 11 if (err) { 12 ;(req as any).jwtData = false 13 } 14 15 ;(req as any).jwtData = jwtData 16 }) 17 } catch (error) { 18 ;(req as any).jwtData = false 19 } 20 next() 21}