首页 > 其他分享 >浏览器调试显示被 CORS 策略阻止

浏览器调试显示被 CORS 策略阻止

时间:2023-07-16 17:13:13浏览次数:30  
标签:浏览器 跨域 本地 http file CORS 服务器 调试

 

详细报错

indexTESTcopy.html:1 Access to XMLHttpRequest at 'file:///E:/WebServer/xxx' from origin 'null' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, isolated-app, chrome-extension, chrome, https, chrome-untrusted.

 

原因:

 

表明在你的调试环境中,出现了跨域请求的问题。浏览器不允许在本地文件系统(file:///)上进行跨域请求到其他域(E:/WebServer/XXX),这是浏览器的安全策略。

 

解决这个问题有几种方法:

  1. 使用本地开发服务器:

    • 推荐的方法是使用本地开发服务器(如 Node.js 的 Express 或 Python 的 SimpleHTTPServer),这样可以模拟一个HTTP协议的域,避免跨域问题。
    • 安装一个本地开发服务器,并将你的项目部署在该服务器上。然后通过 http://localhosthttp://127.0.0.1 访问你的项目,而不是使用 file:/// 协议。
  2. 启用浏览器的跨域访问:

    • 另一种临时方法是启用浏览器的跨域访问选项。请注意,这并不是一个安全建议,应仅用于调试和测试目的。
    • 例如,对于 Chrome 浏览器,在快捷方式的目标属性中添加 --allow-file-access-from-files 参数来启用跨域访问。
  3. 部署到相同的域:

    • FileUploadHandler.ashx 文件部署到与你的前端代码相同的域,确保它们都在同一个域名下,这样就不会遇到跨域问题。

请注意,当你在生产环境中部署应用时,跨域问题通常不会存在,因为前端和后端代码通常是通过相同的域名访问的。跨域问题主要出现在开发和调试过程中,因为前端代码在本地开发服务器上运行,而后端代码可能在不同的域或本地文件系统上。

 

我的解决办法:

  • 安装一个本地开发服务器,并将你的项目部署在该服务器上。然后通过 http://localhost 或 http://127.0.0.1 访问你的项目,而不是使用 file:/// 协议。
  • 直接在url里输入本地开发的服务器,即可。具体细节可以看 IIS 如何创建虚拟目录。

 

标签:浏览器,跨域,本地,http,file,CORS,服务器,调试
From: https://www.cnblogs.com/yu-beng/p/17558106.html

相关文章

  • vue.js浏览器插件
    提取地址:链接:https://pan.baidu.com/s/1Uf9yZaQfRQ1r2JvOxXX50A?pwd=l3iw提取码:l3iw加载已解压的扩展程序  ......
  • chrome调试技巧收集
    1.编辑和重新发送请求1.1copyascURL要用replayxhr重复发送请求(不要重复手动填写表单)请求copyascURL,可在命令行测试请求,适用于后端测试请求,也可用于重复发送请求编辑请求copyascURL之后,在命令行,既可以修改header,也可以修改body1.2chromerequestly插件Inte......
  • goland+dlv远程调试kubelet
    Goland配置cd到main函数所在的go文件目录执行下面命令等待2分钟左右,直到出现APIserverlisteningat:[::]:8033/root/Downloads/dlvdebug--headless--listen=:8033--api-version=2----bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf--kubeconfig=/etc......
  • VS(VisualStudio) 远程调试 (RemoteDebugger)
    VS远程调试方法,下面用一张图说明:参考:https://blog.csdn.net/qq_33538554/article/details/98957450,下面是详情操作:注意:另一篇博文可以参考:https://mp.weixin.qq.com/s/G4m5v7l4kCwvM9LtKu0zVQ......
  • AJAX请求,响应头有set-cookie但浏览器不能写入cookie问题解决!
    开幕雷击:AJAX就不是干这个ajax只有向服务器发送请求时带上cookie的功能可选。不存在ajax向服务器get的时候带回来cookie的功能。解决把AJAX代码改成原始的js代码来完成需求:正确的jsdocument.addEventListener('DOMContentLoaded',function(){document.querySelector('......
  • 88.检测浏览器版本版本有哪些方式
    88.检测浏览器版本版本有哪些方式?检测浏览器版本一共有两种方式:一种是检测window.navigator.userAgent的值,但这种方式很不可靠,因为userAgent可以被改写,并且早期的浏览器如ie,会通过伪装自己的userAgent的值为Mozilla来躲过服务器的检测。第二种方式是功能检测,根据每......
  • 59.什么是浏览器的同源政策
    59.什么是浏览器的同源政策?我对浏览器的同源政策的理解是,一个域下的js脚本在未经允许的情况下,不能够访问另一个域的内容。这里的同源的指的是两个域的协议、域名、端口号必须相同,否则则不属于同一个域。同源政策主要限制了三个方面第一个是当前域下的js脚本不能够访问......
  • 解决浏览器自动将http跳转至https导致无法访问的问题
      最近在宝塔面板申请免费的SSL证书后,部署证书的80端口下的网站可以通过https正常访问,但其他未部署证书的端口也被强制跳转至https请求,导致浏览器提示不安全从而无法访问。宝塔的8888端口也不能访问,当时那是一个慌,当我尝试了各种方法,如重新放行443端口、重新配置nginx反向代理、......
  • 《最新出炉》系列入门篇-Python+Playwright自动化测试-7-浏览器的相关操作
    1.简介上一篇已经将playwright的元素定位大法基本介绍的差不多了,但是在Web的UI自动化的测试中,我们通常需要使用一些方法来操作浏览器,今天就跟随学习了解一下。这一篇宏哥主要是介绍一下,在自动化测试的时候,我们常见的一些浏览器操作有哪些,宏哥将会一一介绍和讲解。2.层级在介绍......
  • 360浏览器10是不是把默认字体改成了微软雅黑?怎么能改回宋体?
    360浏览器10是不是把默认字体改成了微软雅黑?怎么能改回宋体?可以在360浏览器,工具---》选项(设置)---》高级设置---》网页设置内自定义字体,修改成看的比较舒服的字体。(如修改成宋体)  在下面改成你喜欢的字体即可。  ......