@@ -2,6 +2,7 @@ import Express from 'express';
2
2
import mongoose from 'mongoose' ;
3
3
import bodyParser from 'body-parser' ;
4
4
import cookieParser from 'cookie-parser' ;
5
+ import cors from 'cors' ;
5
6
import session from 'express-session' ;
6
7
import connectMongo from 'connect-mongo' ;
7
8
import passport from 'passport' ;
@@ -29,13 +30,28 @@ import { get404Sketch } from './views/404Page';
29
30
const app = new Express ( ) ;
30
31
const MongoStore = connectMongo ( session ) ;
31
32
33
+ const corsOriginsWhitelist = [
34
+ / p 5 j s \. o r g $ / ,
35
+ ] ;
36
+
32
37
// Run Webpack dev server in development mode
33
38
if ( process . env . NODE_ENV === 'development' ) {
34
39
const compiler = webpack ( config ) ;
35
40
app . use ( webpackDevMiddleware ( compiler , { noInfo : true , publicPath : config . output . publicPath } ) ) ;
36
41
app . use ( webpackHotMiddleware ( compiler ) ) ;
42
+
43
+ corsOriginsWhitelist . push ( / l o c a l h o s t / ) ;
37
44
}
38
45
46
+ // Enable Cross-Origin Resource Sharing (CORS) for all origins
47
+ const corsMiddleware = cors ( {
48
+ credentials : true ,
49
+ origin : corsOriginsWhitelist ,
50
+ } ) ;
51
+ app . use ( corsMiddleware ) ;
52
+ // Enable pre-flight OPTIONS route for all end-points
53
+ app . options ( '*' , corsMiddleware ) ;
54
+
39
55
// Body parser, cookie parser, sessions, serve public assets
40
56
41
57
app . use ( Express . static ( path . resolve ( __dirname , '../static' ) ) ) ;
0 commit comments