📅  最后修改于: 2023-12-03 14:39:00.580000             🧑  作者: Mango
access-control-allow-origin
是一个Javascript中的HTTP请求头字段,用于指定响应中允许的源(域)的访问权限。它被用作CORS(跨域资源共享)机制的一部分。当客户端在浏览器中向不同源(域)发送请求时,会根据服务器的配置和access-control-allow-origin
头来判断是否允许跨域访问。
Access-Control-Allow-Origin: <origin> | *
<origin>
可以是一个包含协议、域名和端口号的URL,或者*
表示允许来自任意源的请求。app.js:
const http = require('http');
const server = http.createServer();
server.on('request', (req, res) => {
res.setHeader('Access-Control-Allow-Origin', 'https://example.com');
// 其他响应头和内容...
res.end();
});
server.listen(3000, () => {
console.log('Server running on port 3000');
});
以上示例代码创建了一个Node.js服务器,并在响应头中设置Access-Control-Allow-Origin
为https://example.com
,表示只允许来自https://example.com
的请求访问资源。
app.js:
const http = require('http');
const server = http.createServer();
server.on('request', (req, res) => {
res.setHeader('Access-Control-Allow-Origin', '*');
// 其他响应头和内容...
res.end();
});
server.listen(3000, () => {
console.log('Server running on port 3000');
});
以上示例代码创建了一个Node.js服务器,并在响应头中设置Access-Control-Allow-Origin
为*
,表示允许来自任意源的请求访问资源。
Access-Control-Allow-Origin: *
时,要注意安全性,因为这将允许任何网站都能够访问资源,可能会导致安全风险。Access-Control-Allow-Origin
头,浏览器将拒绝响应,以防止多个允许源的混淆。Access-Control-Allow-Credentials
头来指示是否允许携带身份凭证进行跨域请求。