要解决CORS错误,可以尝试以下方法:
Response.Headers.Add("Access-Control-Allow-Origin", "*");
Response.Headers.Add("Access-Control-Allow-Methods", "GET, POST, OPTIONS");
Response.Headers.Add("Access-Control-Allow-Headers", "Content-Type, Authorization");
const http = require('http');
const request = require('request');
http.createServer(function (req, res) {
const options = {
url: 'https://adfs-sts-server-url',
headers: {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'GET, POST, OPTIONS',
'Access-Control-Allow-Headers': 'Content-Type, Authorization'
}
};
request(options, function (error, response, body) {
if (!error && response.statusCode === 200) {
res.writeHead(200, { 'Content-Type': 'application/json' });
res.end(body);
} else {
res.writeHead(response.statusCode, { 'Content-Type': 'text/plain' });
res.end('Error: ' + response.statusCode);
}
});
}).listen(8080);
const express = require('express');
const request = require('request');
const app = express();
app.get('/adfs', (req, res) => {
const options = {
url: 'https://adfs-sts-server-url',
headers: {
'Authorization': req.headers.authorization
}
};
request(options, (error, response, body) => {
if (!error && response.statusCode === 200) {
res.send(body);
} else {
res.status(response.statusCode).send('Error: ' + response.statusCode);
}
});
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
通过将Ajax请求重定向到同源服务器,然后在服务器端进行ADFS STS请求,可以避免CORS错误。
上一篇:ajax请求中的警告消息未出现
下一篇:Ajax请求重复