Поддержка CORS в NodeJS не работает в Chrome

Я использую CORS в скрипте nodejs как:

var express = require('express')
  , cors = require('cors')
  , app = express();

app.use(cors());

Я использую запрос AJAX для получения данных JSON из другого домена.

Это прекрасно работает для всех браузеров, а именно для Mozilla Firefox и Safari. Однако это не работает в случае с Google Chrome. Что я делаю не так?


person Abhishek Dey    schedule 06.05.2015    source источник


Ответы (1)


Попробуй это

app.all('*', function(req, res, next) {
   res.header("Access-Control-Allow-Origin", "*");
   res.header("Access-Control-Allow-Headers", "X-Requested-With");
   next();
});

OR

app.use(express.methodOverride());

// ## CORS middleware
// 
var allowCrossDomain = function(req, res, next) {
    res.header('Access-Control-Allow-Origin', '*');
    res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
    res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization');

    // intercept OPTIONS method
    if ('OPTIONS' == req.method) {
      res.send(200);
    }
    else {
      next();
    }
};
app.use(allowCrossDomain);
person Wasiq Muhammad    schedule 22.04.2016