【发布时间】:2016-09-24 13:02:28
【问题描述】:
据我所知,如果 cors 请求带有一些额外的标头集,则第一个服务器需要处理它。
使用 CORS,服务器必须发送 Access-Control-Allow-Headers 标头以允许来自客户端的不常见的请求标头。
Access-Control-Allow-Headers ... - 支持的请求标头的逗号分隔列表。
例如,假设我的飞行前请求是
OPTIONS /cors HTTP/1.1
Origin: http://api.bob.com
Access-Control-Request-Method: PUT
Access-Control-Request-Headers: X-Custom-Header
Host: api.alice.com
Accept-Language: en-US
Connection: keep-alive
User-Agent: Mozilla/5.0...
然后我会从服务器端发送响应
Access-Control-Allow-Origin: http://api.bob.com
Access-Control-Allow-Methods: GET, POST, PUT
Access-Control-Allow-Headers: X-Custom-Header
Content-Type: text/html; charset=utf-8
我的问题是—— 当我们向客户端发送飞行前响应时,我应该关闭服务器端的连接吗?
还有一件事,我如何为所有其他不同的后续请求缓存飞行前请求?
谢谢
【问题讨论】:
标签: ajax http-headers cors preflight