has been blocked by CORS policy: Request header field secret is not allowed by Access-Control-Allow-

 问题描述:当前系统需要访问某个网站的接口xxx,但是由于安全限制需要在请求头带俩字段验证token之类的,请求方法需要向后端带上 token 如下para里面两个数据字段,请求方式是 POST ,但是数据返回时跨域阻断报错了:

找了半天原因,跟后端说跨域了,后端说他已经设置了允许跨域,这个:

Access-Control-Allow-Origin: *

解决方式:

然后找了半天原因,各种搜索(要怪只能怪自己学识浅薄)都想骂人了,然后找到原因,告诉后端是需要后端在响应头的 Access-Control-Allow-Headers 字段设置允许前端请求时带有的字段值,比如下面这是改进后的:

Access-Control-Allow-Headers: Content-Type,Access-Token,Appid,Secret,Authorization

就是必须要设置允许设置的请求头带有的字段: Secret 和 Appid

​_getData({
    url: 'xxxxxx',
    para: {
        DeviceName: 'test',
        IP: "192.168.66.99",
    },
    contentType: 'application/json',
    beforeSend: function (xhr) {
        xhr.setRequestHeader('Secret', 'xxx');
        xhr.setRequestHeader('Appid', 'xxx');
    },
})

 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值