UNPKG

swint-middleware

Version:

Essential expressJS middlewares and general middleware loader for Swint

25 lines (20 loc) 773 B
'use strict'; var swintHelper = require('swint-helper'), defaultize = swintHelper.defaultize; module.exports = function(options) { options = defaultize({ headers: ['Origin', 'X-Requested-With', 'Content-Type', 'Accept'], allowedOrigins: ['http://localhost'], credentials: true }, options); return function(req, res, next) { if (options.allowedOrigins.indexOf(req.headers.origin) !== -1) { res.header('Access-Control-Allow-Origin', req.headers.origin); } else if (options.allowedOrigins.indexOf('*') !== -1) { res.header('Access-Control-Allow-Origin', req.headers.origin); } res.header('Access-Control-Allow-Headers', options.headers.join(', ')); res.header('Access-Control-Allow-Credentials', options.credentials.toString()); next(); }; };