H5 页面在 安卓 8.1 系统版本中 浏览器打开获取不到数据 `status`返回`0`这种要怎么改?

作者站长头像
站长
· 阅读数 24

H5 页面在 安卓 8.1 系统版本中 浏览器打开获取不到数据 status返回0这种要怎么改?H5 页面在 安卓 8.1 系统版本中 浏览器打开获取不到数据 `status`返回`0`这种要怎么改?

ajax({
        url: host + '/activity/homepage',
        type: 'GET',
        async: true,
        dataType: 'json',
        data: dataParams,
          success: res =>{
        }
})
回复
1个回答
avatar
test
2024-06-20

感谢各位大佬的热心留言,我的问题解决了,是跨域导致的!我在发送请求的时候添加了请求头token,userId,Content-Type

    xhr.setRequestHeader('token', options.data.token);
    xhr.setRequestHeader('userId', options.data.userId);
    xhr.setRequestHeader('Content-Type', 'application/json;charset-utf-8');

此时后端通过CORS解决跨域问题answer image 可以看到此时Access-Control-Expose-Headers: * 问题正是出在这里可以看这篇文章写的很清晰再遇CORS -- 自定义HTTP header的导致跨域 也可以参考这个问题 参考链接 服务端应该修改Access-Control-Allow-Headers中的*号为具体的字段

  resp.headers['Access-Control-Allow-Headers'] = 'content-type,token,userId'  

这里是修改后的样子,至此问题解决answer image

回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容