我正在从野生动物园发出一个放置请求,这给了 CORS 问题,即
Failed to load resource: Method PUT is not allowed by Access-Control-Allow-Methods.
但它在 chrome 中工作正常,您可以看到我的响应标题,如果我工作错误,请帮助我
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Methods", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With ,allow-access");
我只是用res.header("Access-Control-Allow-Methods", "PUT");
替换res.header("Access-Control-Allow-Methods", "*");
并且它工作正常,仍然怀疑"*"有什么问题。
我遇到了同样的问题。事实证明,服务器将访问控制允许方法响应标头的值设置为 *。它必须显式设置为允许方法而不是通配符,因为 iOS 中的 safari 不支持它,如本 MDN 文档中给出的那样。
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Methods