ajax 调用服务器接口报403错误解决办法
发现问题
在前端页面中远程调用服务器接口时报403错误,而直接在浏览器访问则不会报错。
Ajax调用结果:
浏览器调用结果:
报403原因
经过分析发现是因为前端和服务器的域名不同而触发了防盗链机制。
防盗链机制
防盗链机制是基于http请求头的referer实现的,refer就相当于浏览器页面地址的id,浏览器向服务器发起请求时,会携带referer,服务器通过referer来判断是否是自己的域名,如果不是就会拒绝访问,如果是,则继续访问。
解决办法
对于自身项目而言,解决跨域问题可以通过代码设置允许的域。代码如下:
@Configuration
public class GlobalCorsConfig {@Beanpublic CorsFilter corsFilter() {//1.添加cors配置信息CorsConfiguration config = new CorsConfiguration();// 允许的域(根据需要进行设置),不要写*,config.addAllowedOrigin("http://localhost:6334");//是否发送cookie信息config.setAllowCredentials(true);//允许请求的方式config.addAllowedMethod("OPTIONS");config.addAllowedMethod("HEAD");config.addAllowedMethod("GET");config.addAllowedMethod("PUT");config.addAllowedMethod("POST");config.addAllowedMethod("DELETE");config.addAllowedMethod("PATCH");//允许的头信息config.addAllowedHeader("*");//有效时长config.setMaxAge(3600L);//添加映射网络,拦截一切请求UrlBasedCorsConfigurationSource configurationSource = new UrlBasedCorsConfigurationSource();configurationSource.registerCorsConfiguration("/**", config);//返回新的CorsFilterreturn new CorsFilter(configurationSource);}
}
ajax 调用服务器接口报403错误解决办法相关推荐
- vue-cli 项目打包后 代理接口报404错误 解决办法!
1.启动nginx cd usr/local/nginx/sbin ./nginx 2.找到nginx安装目录 whereis nginx cd usr/local/nginx/ 3.打开nginx ...
- ajax的post请求出现403错误,如何解决Django中ajax发送post请求报403错误CSRF验证失败的问题...
如何解决Django中ajax发送post请求报403错误CSRF验证失败的问题 发布时间:2021-02-05 14:23:57 来源:亿速云 阅读:92 作者:小新 这篇文章主要介绍了如何解决Dj ...
- 微信上传图文素材接口报41005错误解决方法
微信上传图文素材接口报41005错误解决方法 参考文章: (1)微信上传图文素材接口报41005错误解决方法 (2)https://www.cnblogs.com/gy1010/p/6674529.h ...
- idea提交git报401错误解决办法
idea提交git报401错误解决办法 打开当前git项目中的 .git文件夹,打开config 文件 有一句是这样的 [remote "origin"] url = http:/ ...
- 【从零之三(更)】自定义类中调用讯飞语音包错误解决办法
原文:http://blog.csdn.net/monkeyduck/article/details/24302655 在科大讯飞语音包的Mscdemo中它的方法都是写在Activity中的,这样其实 ...
- python token post403原因_Django中ajax发送post请求 报403错误CSRF验证失败解决方案
前言 今天学习Django框架,用ajax向后台发送post请求,直接报了403错误,说CSRF验证失败:先前用模板的话都是在里面加一个 {% csrf_token %} 就直接搞定了CSRF的问题了 ...
- win8安装wampserver报403错误解决方法
看着别人开始体验win8了,前几天我也安装了win8系统,总体来说还不错,但是今天安装完Wampserver后,浏览器输入localhost,竟然报了403错误,我以为我安装出错了,后来研究了半天,发 ...
- C C++ 调用第三方DLL库失败 LoadLibrary 返回NULL 并报 126 错误 解决办法
在之前有写关于生成dll文件以及调用dll的方法:https://blog.csdn.net/Hilaph/article/details/104917856 而在vs2019新开一个项目并运行调用相 ...
- 访问nginx默认页报403错误解决方法
一般有三种原因造成403拒绝访问. 1.防火墙,关闭就行 2.没有对访问页的可读权限,一般去nginx/html/下把index.html权限改为664即可 以上两种原因我均测试过,但是访问还是报40 ...
最新文章
- 一个精简的开源点云库
- python --error整理(不定时更新)
- python怎么和sql一起用_自己写的Python数据库连接类和sql语句拼接方法
- SAP Spartacus的persist focus,触发map set的条件
- linux jar和zip,Linux命令———zip和jar文件压缩解压
- JSON 之 SuperObject(3): 访问
- mysql处理emoji表情_mysql支持emoji表情存取的解决方案
- 机器学习入门经典好文
- vpx计算机论文,高端计算机系统架构设计与VPX总线
- cool edit pro 2.1中文版未定义外部错误怎么解决
- html三级导航栏编写
- C语言show用法,show的用法和例句
- sharp计算机按钮配置,将Sharp TV HDMI接口连接到计算机并设置教程
- 【毕业季】总结过去,展望未来
- 干货分享:数据分析面试一般都问啥?
- AE模板 正文00:39 / 00:51抽象视差优雅大气科幻时尚视频幻灯片AE模板
- rrpp+ospf环网组建
- 字符串转换,大写变小写,小写变大写
- python爬取携程网旅游_爬虫之携程网旅游信息爬取
- oracle第三章、第四章作业