首页 > 试题广场 >

讲一下跨域的成因与方案:CORS、代理、JSONP、同源策略

[问答题]
讲一下跨域的成因与方案:CORS、代理、JSONP、同源策略细节。
成因:浏览器同源策略。协议 / 域名 / 端口 三者必须相同。 CORS:服务端设置响应头,Access-Allow-Control-Origin/Access-Allow-Control-Methods 等。非简单请求多一个 options 请求。 代理:代理浏览器发送请求,代理服务器和浏览器同源。服务器和服务器间不存在同源策略。 JSONP:利用 script 标签可跨域,将 src 设为请求地址,封装一个全局函数,服务器返回的脚本调用该全局函数并将 data 作为参数。
发表于 2025-09-15 20:45:59 回复(0)
同源策略(核心前提) - 定义:协议、域名、端口三者必须完全一致,否则为跨域; ​ - 限制:阻止跨域读取Cookie、LocalStorage,禁止跨域AJAX请求等。 2. 跨域成因 - 前端页面与请求目标服务器的“协议/域名/端口”不一致,触发同源策略限制。 3. 核心解决方案 - CORS(主流):后端配置响应头(如 Access-Control-Allow-Origin ),允许指定跨域源请求; ​ - 代理(开发/生产常用):通过同源服务器转发请求(如Webpack Dev Server代理、Nginx反向代理); ​ - JSONP(兼容旧浏览器):利用 
发表于 2025-11-03 06:56:02 回复(0)