ajax设置请求头
程序员文章站
2022-07-14 18:39:58
...
ajax设置请求头
虽然事隔几天了,但是觉得这个问题还是应该被记录一下
公司后台需要验证提交的Header参数,在请求中我就加了Header,原来能跑通的程序报错了:见图
这应该说的是myToken这个请求参数不被……允许的意思吧,在网上查了半天,答案千奇百怪,总之基本都没用。后来看到一篇帖子,说网页在发送正式请求前会发送一次预请求,预请求通过了才会发送正式请求。很明显啦,我的正式请求都没有发送出去,那就是预请求失败了。又查了一下,在后台要设置允许发送的请求头,已java后台为例子。
在你最外层的Filter中加入一下几句【也可能加一句就行了,没试】
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Credentials", "true");
response.setHeader("Access-Control-Allow-Methods", "*");
response.setHeader("Access-Control-Allow-Headers", "myToken,Access-Token,ke,key,key2,key3,key4,key-lami,a,token,lami-token,lami-token-web,lami-user");
response.setHeader("Access-Control-Expose-Headers", "*");
chain.doFilter(req, res);
}
这里在Access-Control-Allow-Headers中加入你需要的头
测试:通过
OK~~~~~~~~~~~~结束