Mac版chrome谷歌浏览器解决跨域,进行开发调试

阅读: 评论:0

Mac版chrome谷歌浏览器解决跨域,进行开发调试

Mac版chrome谷歌浏览器解决跨域,进行开发调试

解决谷歌浏览器的跨域问题

  • 问题提出
  • 背景介绍
  • 解决步骤

问题提出

跨域问题一般在浏览器中这样提示

Access to XMLHttpRequest at 'url1' from origin '127.0.0.1:8686' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: The 'Access-Control-Allow-Origin' header has a value

背景介绍

1995年,同源政策由 Netscape 公司引入浏览器。目前,所有浏览器都实行这个政策。

最初,它的含义是指,A 网页设置的 Cookie,B 网页不能打开,除非这两个网页“同源”。所谓“同源”指的是“三个相同”:

  • 协议相同
  • 域名相同
  • 端口相同

同源政策的目的,是为了保证用户信息的安全,防止恶意的网站窃取数据。

正式服务器因为部署原因,都是同源,也就不会出现跨域,实际开启跨域也需要后端来控制。
开发过程中服务端域名和客户端域名不一致会出现跨域。
现在浏览器主要使用CORS标准来实现跨域。

CORS 是一个 W3C 标准,全称是跨域资源共享(CORSs-origin resource sharing),它允许浏览器向跨源服务器,发出XMLHttpRequest请求。

其实,准确的来说,跨域机制是阻止了数据的跨域获取,不是阻止请求发送。

CORS需要浏览器和服务器同时支持。目前,所有浏览器都支持该功能,IE浏览器不能低于IE10。

因此,实现CORS通信的关键是服务器。只要服务器实现了CORS接口,就可以跨域通信。

解决步骤

  1. 创建文件夹 myChromeData(文件夹名称可随意配置)
  2. 创建一个shell脚本文件.sh格式。新增文件之后改后缀即可。可以使用任何编辑器打开。
  3. 把下面代码复制进去 (xxx 是自己用户名 切记要改;–user-data-dir= ‘第1步创建文件的本地路径’ )
open -n /Applications/Google Chrome.app/ --args --disable-web-security  --user-data-dir=/Users/xxx/myChromeData
  1. 将写好的shell脚本拖入mac的终端,回车即可执行
  2. 出现下方文字提示即算成功

    参考引用
    [1]: 详解浏览器跨域的几种方法

本文发布于:2024-02-04 06:19:21,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170700887753041.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:浏览器   Mac   chrome
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23