Update: Move Cors inside Routes definition
This commit is contained in:
parent
a12926f277
commit
f26fcdc961
3 changed files with 39 additions and 23 deletions
26
config/cors.config.js
Normal file
26
config/cors.config.js
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
const cors = require('cors');
|
||||||
|
module.exports.cors = cors;
|
||||||
|
|
||||||
|
const allowList = [
|
||||||
|
'http://127.0.0.1:4200',
|
||||||
|
'http://127.0.0.1:4201',
|
||||||
|
'https://admin-polynotfound.herokuapp.com/',
|
||||||
|
'https://polynotfound.herokuapp.com/'
|
||||||
|
];
|
||||||
|
|
||||||
|
const corsOptionsDelegate = function(req, callback) {
|
||||||
|
let corsOptions;
|
||||||
|
if (allowList.indexOf(req.header('Origin')) !== -1) {
|
||||||
|
corsOptions = {
|
||||||
|
origin: true,
|
||||||
|
credentials: true
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
corsOptions = {
|
||||||
|
origin: false,
|
||||||
|
credentials: true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
callback(null, corsOptions)
|
||||||
|
}
|
||||||
|
module.exports.options = corsOptionsDelegate;
|
||||||
|
|
@ -1,42 +1,43 @@
|
||||||
const users = require("../controllers/user.controller");
|
const users = require("../controllers/user.controller");
|
||||||
|
const {cors, options} = require("../config/cors.config");
|
||||||
module.exports = app => {
|
module.exports = app => {
|
||||||
let router = require("express").Router();
|
let router = require("express").Router();
|
||||||
|
|
||||||
// Authenticate a User
|
// Authenticate a User
|
||||||
router.post("/user/auth", users.auth);
|
router.post("/user/auth", cors(options), users.auth);
|
||||||
|
|
||||||
// Logout a User
|
// Logout a User
|
||||||
router.delete("/user/logout", users.logout);
|
router.delete("/user/logout", cors(options), users.logout);
|
||||||
|
|
||||||
// Request password reset with email
|
// Request password reset with email
|
||||||
router.post("/user/resetPass", users.resetPass);
|
router.post("/user/resetPass", cors(options), users.resetPass);
|
||||||
|
|
||||||
// Create and Save a new User
|
// Create and Save a new User
|
||||||
router.post("/user/create", users.create);
|
router.post("/user/create", cors(options), users.create);
|
||||||
|
|
||||||
// Retrieve all Users if admin
|
// Retrieve all Users if admin
|
||||||
router.get("/user/findAll", users.findAll);
|
router.get("/user/findAll", cors(options), users.findAll);
|
||||||
|
|
||||||
// Find single User from id if admin or session id
|
// Find single User from id if admin or session id
|
||||||
router.get("/user/findOne/:id", users.findOne);
|
router.get("/user/findOne/:id", cors(options), users.findOne);
|
||||||
|
|
||||||
// Update a User from id if admin or session id
|
// Update a User from id if admin or session id
|
||||||
router.put("/user/update/:id", users.update);
|
router.put("/user/update/:id", cors(options), users.update);
|
||||||
|
|
||||||
// Delete a User from id if admin or session id
|
// Delete a User from id if admin or session id
|
||||||
router.delete("/user/delete/:id", users.delete);
|
router.delete("/user/delete/:id", cors(options), users.delete);
|
||||||
|
|
||||||
// Delete all Users if superAdmin
|
// Delete all Users if superAdmin
|
||||||
router.delete("/user/deleteAll", users.deleteAll);
|
router.delete("/user/deleteAll", cors(options), users.deleteAll);
|
||||||
|
|
||||||
// Get all Roles depending on the User session id
|
// Get all Roles depending on the User session id
|
||||||
router.get("/user/roles", users.roles);
|
router.get("/user/roles", cors(options), users.roles);
|
||||||
|
|
||||||
// Get 1 or multiple ad adapted to the User session id
|
// Get 1 or multiple ad adapted to the User session id
|
||||||
router.get("/user/ad", users.ad);
|
router.get("/user/ad", cors(options), users.ad);
|
||||||
|
|
||||||
// Get History
|
// Get History
|
||||||
router.get("/user/history", users.history);
|
router.get("/user/history", cors(options), users.history);
|
||||||
|
|
||||||
app.use('/api', router);
|
app.use('/api', router);
|
||||||
};
|
};
|
||||||
|
|
|
||||||
11
server.js
11
server.js
|
|
@ -9,17 +9,6 @@ const bodyParser = require('body-parser');
|
||||||
app.use(bodyParser.urlencoded({extended:true}));
|
app.use(bodyParser.urlencoded({extended:true}));
|
||||||
app.use(bodyParser.json());
|
app.use(bodyParser.json());
|
||||||
|
|
||||||
const cors = require('cors');
|
|
||||||
app.use(cors({
|
|
||||||
origin: [
|
|
||||||
'http://127.0.0.1:4200',
|
|
||||||
'http://127.0.0.1:4201',
|
|
||||||
'https://admin-polynotfound.herokuapp.com/',
|
|
||||||
'https://polynotfound.herokuapp.com/'
|
|
||||||
],
|
|
||||||
credentials: true
|
|
||||||
}));
|
|
||||||
|
|
||||||
const db = require("./models/mongodb.model");
|
const db = require("./models/mongodb.model");
|
||||||
console.log("Db Url: ",db.url);
|
console.log("Db Url: ",db.url);
|
||||||
db.mongoose
|
db.mongoose
|
||||||
|
|
|
||||||
Reference in a new issue