Use cookie-parser, updated tokenToUser middleware & set logout endpoint
This commit is contained in:
		| @@ -20,10 +20,11 @@ | ||||
|     "axios": "^0.18.0", | ||||
|     "bcrypt": "^3.0.6", | ||||
|     "body-parser": "~1.18.2", | ||||
|     "cookie-parser": "^1.4.6", | ||||
|     "cross-env": "~5.1.4", | ||||
|     "express": "~4.16.0", | ||||
|     "form-data": "^2.5.1", | ||||
|     "jsonwebtoken": "^8.2.0", | ||||
|     "jsonwebtoken": "^8.5.1", | ||||
|     "km-moviedb": "^0.2.12", | ||||
|     "node-cache": "^4.1.1", | ||||
|     "node-fetch": "^2.6.0", | ||||
|   | ||||
| @@ -1,11 +1,14 @@ | ||||
| const express = require("express"); | ||||
| const Raven = require("raven"); | ||||
| const cookieParser = require("cookie-parser"); | ||||
| const bodyParser = require("body-parser"); | ||||
| const tokenToUser = require("./middleware/tokenToUser"); | ||||
|  | ||||
| const configuration = require("src/config/configuration").getInstance(); | ||||
|  | ||||
| const reqTokenToUser = require("./middleware/reqTokenToUser"); | ||||
| const mustBeAuthenticated = require("./middleware/mustBeAuthenticated"); | ||||
| const mustBeAdmin = require("./middleware/mustBeAdmin"); | ||||
| const mustHaveAccountLinkedToPlex = require("./middleware/mustHaveAccountLinkedToPlex"); | ||||
| const configuration = require("src/config/configuration").getInstance(); | ||||
|  | ||||
| const listController = require("./controllers/list/listController"); | ||||
| const tautulli = require("./controllers/user/viewHistory.js"); | ||||
| @@ -18,6 +21,7 @@ Raven.config(configuration.get("raven", "DSN")).install(); | ||||
| const app = express(); // define our app using express | ||||
| app.use(Raven.requestHandler()); | ||||
| app.use(bodyParser.json()); | ||||
| app.use(cookieParser()); | ||||
|  | ||||
| const router = express.Router(); | ||||
| const allowedOrigins = configuration.get("webserver", "origins"); | ||||
| @@ -26,8 +30,8 @@ const allowedOrigins = configuration.get("webserver", "origins"); | ||||
| // router.use(bodyParser.json()); | ||||
| app.use(bodyParser.urlencoded({ extended: true })); | ||||
|  | ||||
| /* Decode the Authorization header if provided */ | ||||
| router.use(tokenToUser); | ||||
| /* Check header and cookie for authentication and set req.loggedInUser */ | ||||
| router.use(reqTokenToUser); | ||||
|  | ||||
| // TODO: Should have a separate middleware/router for handling headers. | ||||
| router.use((req, res, next) => { | ||||
| @@ -60,6 +64,7 @@ app.use(function onError(err, req, res, next) { | ||||
|  */ | ||||
| router.post("/v1/user", require("./controllers/user/register.js")); | ||||
| router.post("/v1/user/login", require("./controllers/user/login.js")); | ||||
| router.post("/v1/user/logout", require("./controllers/user/logout.js")); | ||||
| router.get( | ||||
|   "/v1/user/settings", | ||||
|   mustBeAuthenticated, | ||||
|   | ||||
		Reference in New Issue
	
	Block a user