Cors 如何判断飞行前的反应以及如何处理?

Cors 如何判断飞行前的反应以及如何处理?,cors,Cors,我已经设法得到了对我的帖子的回复。这显然是对飞行前请求的响应。以下是答复: HTTP/1.1 200 OK Date: Thu, 24 Jan 2019 00:19:54 GMT Server: Apache X-Powered-By: PHP/5.6.36 Set-Cookie: cisession=ok8ilu3sqp51i2s6tkkuoh6aa9r9oeu6; expires=Thu, 24-Jan- 2019 08:19:55 GMT; Max-Age=28800; path=/; H

我已经设法得到了对我的帖子的回复。这显然是对飞行前请求的响应。以下是答复:

HTTP/1.1 200 OK
Date: Thu, 24 Jan 2019 00:19:54 GMT
Server: Apache
X-Powered-By: PHP/5.6.36
Set-Cookie: cisession=ok8ilu3sqp51i2s6tkkuoh6aa9r9oeu6; expires=Thu, 24-Jan-
2019 08:19:55 GMT; Max-Age=28800; path=/; HttpOnly
X-Frame-Options: SAMEORIGIN
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: Accept,Authorization,Content-Type,Origin
Access-Control-Allow-Methods: GET, POST, PATCH, PUT, DELETE
Access-Control-Max-Age: 86400
Content-Length: 0
Keep-Alive: timeout=2, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8

我的浏览器代码得到了200,然后阻塞,因为它希望responseText是一个json缓冲区。但事实并非如此。它得到的是对“onload”事件中的飞行前请求的空响应。我试着等待onloadend,但得到了相同的空响应Text。那我在这里做什么呢?忽略第一个状态=200,然后等待真正的状态?前200个是飞行前的反应,对我来说没用。飞行前响应中是否有某个字段告诉我这只是一次信息传输?

如果是对POST请求的响应,则不会是对飞行前请求的响应

飞行前请求是一个选项请求(将由浏览器自动发送,因此您无需太多担心,除非您正在编写自己的web浏览器或需要响应的服务器端代码)

请注意,如果您发出需要预飞行的请求,则需要在对预飞行的响应和对实际请求的响应中设置
访问控制-*
标题


如果您发出POST请求并将其返回,那么您只是发出了一个请求,服务器用长度为零(因此无效)的HTML文档响应了该请求。

您的问题不是很清楚。“我的浏览器代码”-您正在编写自己的web浏览器吗?并且目前在实现XMLHttpRequest或fetch时遇到问题?“这显然是对飞行前请求的响应”-请解释您是如何理解的?你不应该自己在客户端处理飞行前的请求——这都是内部处理的事情。我认为你是对的。似乎我的this->input->is\u ajax\u request()失败了。我会设法找出原因。