ich dieses Modul bin mit cors zu behandeln fordert https://www.npmjs.com/package/cors Ich brauche alle Domänen außer der weißen ListeExpress CORS Domain Whitelist
Von offiziellen CORS-Modul Beispiel zu beschränken:
var whitelist = ['http://example1.com', 'http://example2.com'];
var corsOptions = {
origin: function(origin, callback){
var originIsWhitelisted = whitelist.indexOf(origin) !== -1;
callback(null, originIsWhitelisted);
}
};
app.get('/products/:id', cors(corsOptions), function(req, res, next){
res.json({msg: 'This is CORS-enabled for a whitelisted domain.'});
});
Was ich dazu geändert haben Damit es funktioniert:
var origin;
var corsOptions;
app.all('*', function (req, res, next) {
origin = req.get('origin');
var whitelist = ['http://example1.com', 'http://example2.com'];
corsOptions = {
origin: function (origin, callback) {
var originIsWhitelisted = whitelist.indexOf(origin) !== -1;
callback(null, originIsWhitelisted);
}
};
next();
});
app.post('/products/:id', cors(corsOptions), function (req, res, next) {
res.json({ msg: 'This is CORS-enabled for a whitelisted domain.' });
});
Dann laufe ich Test von http://localhost:8080
durch zu app.post('/products/:id'...)
Entsendung I expecte d es sollte nicht ausgeführt werden, weil http://localhost:8080
nicht auf der weißen Liste ist, aber tatsächlich tat es. Irgendeine Idee warum und wie man das repariert?
Auch didadd ich cors(corsOptions)
zu sehen, aber es sagt - not available
Warum funktioniert das ursprüngliche Beispiel aus dem 'cors' Modul Readme nicht für Sie? Ihr Code führt genau das gleiche aus, außer dass er so lange zurückgestellt wird, bis eine Anfrage eingegangen ist. – mscdex
@mscdex Ich habe ein bisschen mehr debuggen und eigentlich funktioniert das Original. Aber ich bin ein wenig verwirrt, warum Zeile 'res.json ({msg: 'Dies ist CORS-aktiviert für eine Domain auf der weißen Liste.');' Ausgeführt werden, aber die Antwort, die ich bekomme, ist tatsächlich 'Nein 'Access-Control-Allow -Origin 'Header ist auf der angeforderten Ressource vorhanden. Origin' – sreginogemoh