app.use((err, req, res, next) => { const {type, code} = err; if (type === 'FeathersError') { res.status(code).json(err.toJSON()) } })
app.configure(socketio({}, function(io) { io.origins(corsResolver) io.use(function(socket, next) { sessionMiddleware(socket.request, socket.request.res, next) }) io.use(function(socket, next) { socket.feathers.request = socket.request next() }) }))
const start = (mongo) => { const {PORT = 6767} = process.env; app.emit('connected', app, mongo) services(app, mongo) app.mongo = mongo; app.listen(PORT, (err) => { console.log(`👍 app is listening on http://localhost:${PORT} \r\n`) Resolve({app, mongo}) }). on('error', (error) => { console.log(`❌ ${error} \r\n`) Reject(error) }) }
app.use((req, res, next) => { const token = req.cookies [COOKIE_NAME] app.passport.verifyJWT(token, { secret: REST_AUTH_SECRET || 'secret', }). then((user) => { req.session.authenticated = true req.session.user = user req.session.save() next() }). catch((err)=> { req.session.authenticated = false req.session.user = { userId: null } req.session.save() next() }) })
function start() { const app = express(feathers()); app.use(express.json()) app.use(express.urlencoded({ extended: true })); app.configure(express.rest());