gpt4 book ai didi

ajax - 允许 Safari 和 Chrome 中的跨域请求?服务器响应与命令行参数

转载 作者:行者123 更新时间:2023-12-04 20:19:09 29 4
gpt4 key购买 nike

我正在尝试在 Windows 上使用 Safari 进行跨域请求。我的 Safari 版本是 5.1.2。

这是一个经典的问题。我在很多地方都读到 Chrome 和 Safari 允许跨域请求,只要服务器在响应中使用以下 header 进行响应

Access-Control-Allow-Origin: *

我已经阅读了这篇文章。
How to allow cross-domain requests in Safari?
以及 stackoverflow 网站上的许多其他网站。

但是,他们都没有回答我的问题。

我在 Chrome 和 Safari 执行跨域 AJAX 请求时遇到问题,即使我从服务器发送回必要的 header 。

我终于用“--disable-web-security”运行了 Chrome。然后它起作用了。

我的问题:

1) 我用 Safari 做什么?我是否使用类似的命令行参数?

2)更重要的是,有人可以告诉我,Chrome 和 Safari 是否默认允许跨域功能,只要服务器以 header 响应,或者我是否必须确保

a) 服务器用 header 响应



b) 浏览器以正确的参数启动。

最佳答案

我发现了问题。阅读有关 CORS 的更多信息有帮助 html5rocks.com/en/tutorials/cors .我意识到我的请求正在触发预检请求 (OPTIONS),并且服务器没有设置为正确处理这些请求。它导致预检请求的原因是因为我使用的是 JQuery 并且它在我的请求中添加了一个自定义 header 。我修改了我的代码以防止添加这个额外的 header ,并且我的请求不再需要预检请求。现在我不必禁用网络安全,它工作正常。

关于ajax - 允许 Safari 和 Chrome 中的跨域请求?服务器响应与命令行参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8679736/

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