gpt4 book ai didi

javascript - 某些 Mac 机器浏览器上的 Angularjs CORS 问题

转载 作者:行者123 更新时间:2023-12-03 09:33:01 25 4
gpt4 key购买 nike

我们有使用 Angularjs 的前端,我们点击 api 从另一个使用 apache 服务器的域和另一个域作为 Nodejs 服务器获取详细信息。

在为两台服务器调用 api 时,在某些 mac 计算机中,api 在 OPTIONS 请求本身中失败。我不明白为什么它只发生在某些机器上。

在初始调用中,在浏览器中检查时显示失败,类型也是 xhr 方法。

有人可以帮助解决我们面临此类问题的原因吗?

系统工作正常,请求 header 为

Request Headers view source Accept:/ Accept-Encoding:gzip, deflate, sdch Accept-Language:en-US,en;q=0.8 Access-Control-Request-Headers:accept, content-type Access-Control-Request-Method:POST Connection:keep-alive Host:XXX.XXXXX.com Origin:http://localhost Referer:http://localhost/XXXXX/ User-Agent:Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.132 Safari/537.36 [7/15/2015 8:20:06 PM] karthick raja: it shows this request header

我们在成功机器中得到响应

但是失败的系统有

Request Headers Access-Control-Request-Headers:accept, content-type Access-Control-Request-Method:POST Host:xxxx.xxxx.xom Origin:http://localhost Referer:http://localhost/XXXXXX/ User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.134 Safari/537.36

在出现故障的机器中,服务会失败

最佳答案

某些浏览器为您的发布请求放置了预检请求,因为您的请求 header 中的内容类型似乎为空。请将内容类型设置为以下之一:

  • application/x-www-form-urlencoded
  • 多部分/表单数据
  • 文本/纯文本

除了上述 Content-type 设置为请求 header 之外,浏览器还会对 post 方法发出预检请求。

要了解有关“预检请求”的更多信息,请查看以下链接以获得更好的想法。 https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS#Preflighted_requests

关于javascript - 某些 Mac 机器浏览器上的 Angularjs CORS 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31434224/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com