我一直在尝试向iron- ajax服务器发布一个简单的帖子,但是在预检调用中总是失败。对于我的一生,我不知道发生了什么,所有CORS标头在服务器上似乎都是正确的。
iron- ajax
Response headers
Access-Control-Allow-Credentials:true Access-Control-Allow-Headers:Content-Type Access-Control-Allow-Methods:GET, POST, PUT, OPTIONS Access-Control-Allow-Origin:* cache-control:must-revalidate, private, no-cache, no-store, max-age=0 Connection:Keep-Alive Content-Encoding:gzip Content-Length:138 Content-Type:text/html
Request headers
Accept:*/* Accept-Encoding:gzip, deflate, sdch, br Accept-Language:en-US,en;q=0.8 Access-Control-Request-Headers:content-type Access-Control-Request-Method:POST Cache-Control:no-cache Connection:keep-alive
该请求确实是从本地主机发出的,但我认为*应该由本地来处理。
*
控制台中显示的错误是: OPTIONS https://... 403 (Forbidden)和
OPTIONS https://... 403 (Forbidden)
XMLHttpRequest cannot load https://.... Response for preflight has invalid HTTP status code 403
任何帮助/建议表示赞赏。
403响应状态表示服务器后端没有配置为处理OPTIONS请求,而不仅仅是CORS预检OPTIONS请求是一个普遍问题。
OPTIONS
服务器必须以OPTIONS2xx成功状态(通常为200或204)响应请求。
如果服务器不执行此操作,Access- Control-*则配置了要发送的标头没有区别。配置服务器以OPTIONS正确方式处理请求(发送200或204成功消息)的答案取决于它所运行的服务器软件
Access- Control-*