【调试错误】Access to XMLHttpRequest at file:E590/ceshi.json from origin null 亲测有效!!!
使用前后端分离的方式创建web项目的时候出现问题:
这是因为 ajax 请求的对应的域在本地的一个文件路径,比如在D盘的某个文件夹,这里存放的都是前端文件;
但是对应的服务器是 localhost 的一个域名;
虽然请求可以到达服务端,服务端也可以处理,但是请求是无法进入ajax的success部分的。
springboot处理的方式是,在代码里面加上跨域的注解。
spring的官方文档有这个注解的解释,如下图
简单翻译一下:
这个注解会使得对应的方法支持跨域请求。
默认情况下,允许所有的 origin 和所有的 header ,以及所有的 controller 对应的HTTP方法。
allowedCredentials参数在默认情况下不启用,因为这会建立一个信任级别,这个级别会把用户的敏感信息(如cookies和CSRF令牌)公开,建议是只应在适当的情况下使用。
开始的时候加了:
@CrossOrigin
- 1
但是重启应用之后还是有问题,于是就加入了allowedCredentials参数,改成:
@CrossOrigin(allowCredentials = "true", allowedHeaders = "*")
- 1
然后成功。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)