4. 跨域问题 (CORS)
题目:解释跨域问题及其解决方案。
解析:https://www.nowcoder.com/issue/tutorial?zhuanlanId=j572L2&uuid=a0ebdf0d3df6484e8bdc5507fad55bd6
跨域问题是指浏览器出于安全考虑,限制从一个域名下的文档或脚本访问另一个域名下的资源。
解决方案:
CORS (Cross-Origin Resource Sharing):服务器设置 Access-Control-Allow-Origin 响应头,允许特定域名或所有域名访问资源。
JSONP:利用 <script> 标签不受同源策略限制的特性,通过回调函数获取数据。
代理服务器:在同源服务器上设置代理,转发请求到目标服务器。
// 服务器端设置 CORS 响应头
app.use((req, res, next) => {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE');
res.header('Access-Control-Allow-Headers', 'Content-Type');
next();
});
解析:https://www.nowcoder.com/issue/tutorial?zhuanlanId=j572L2&uuid=a0ebdf0d3df6484e8bdc5507fad55bd6
跨域问题是指浏览器出于安全考虑,限制从一个域名下的文档或脚本访问另一个域名下的资源。
解决方案:
CORS (Cross-Origin Resource Sharing):服务器设置 Access-Control-Allow-Origin 响应头,允许特定域名或所有域名访问资源。
JSONP:利用 <script> 标签不受同源策略限制的特性,通过回调函数获取数据。
代理服务器:在同源服务器上设置代理,转发请求到目标服务器。
// 服务器端设置 CORS 响应头
app.use((req, res, next) => {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE');
res.header('Access-Control-Allow-Headers', 'Content-Type');
next();
});
全部评论
相关推荐