jQuery跨域,添加自定义头部header
jQuery跨域,添加自定义头部header
walala_Lee 发表于7个月前
jQuery跨域,添加自定义头部header
  • 发表于 7个月前
  • 阅读 47
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 新注册用户 域名抢购1元起>>>   

1、前端jQuery代码

$.ajax({
            crossDomain: true,
            beforeSend: function(req) {
                req.setRequestHeader("token", token);
                req.setRequestHeader("auth", auth);
            },
            url:'http://baidu.com',
            data:{},
            method:'get',
            dataType:'json',
            success:function(data) {
                
            }
        });

2、服务器端对于要访问的地址,要设置响应头

response.addHeader("Access-Control-Allow-Origin", "*");//支持全域名访问,不安全,部署后需要固定限制为客户端网址
response.addHeader("Access-Control-Allow-Headers", "x-requested-with,content-type,token,auth");//响应头 请按照自己需求添加。
response.addHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE, PUT");//支持的http 动作

x-requested-with,content-type 后面要加上,允许传递的头部参数

另外,对于跨域请求,浏览器会先针对请求地址,发送一次 OPTIONS 类型的请求,确保服务器是能够接受跨域请求,如果此时服务器在响应头中没有任何设置,浏览器则不会发起正式请求(GET、POST、DELETE、PUT请求),会提示请求失败。

所以服务器端,根据各自的需求,有时候同一个接口地址要多写一个 OPTIONS 接口,什么都不做,只用来设置响应头。

参考博客:http://www.cnblogs.com/cdemo/p/5158663.html

共有 人打赏支持
粉丝 4
博文 163
码字总数 50381
×
walala_Lee
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: