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