当我在对象上运行 cURL 以查看其 HTTP 响应标头时(我只是添加了代理标志来模拟浏览器请求):
curl -I -A "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.85 Safari/537.36" http://b17db03a092ebf708b42-9afd7fe2d9c9c6937aeab44904ac3403.r3.cf5.rackcdn.com/artist/samplesong/13111c20aee51aeb480ecbd988cd8cc9.mp3
我有:
HTTP/1.1 200 正常 内容长度:481005 接受范围:字节 最后修改时间:2015 年 9 月 8 日星期二 18:37:54 GMT ETag:e9f52648c48c707cb9c17e1871787ad8 X-时间戳:1441737473.83703 访问控制允许来源:* 内容类型:音频/mpeg X-Trans-Id:tx6531dbbd8dc541eeaf824-0055f0765eiad3 缓存控制:公共,最大年龄=259169 过期:2015 年 9 月 12 日星期六 18:11:11 GMT 日期:格林威治标准时间 2015 年 9 月 9 日星期三 18:11:42 连接:保持活动
如您所见,有一条 Access-Control-Allow-Origin行。
但是当我使用 Safari、Chrome 或 Firefox(无缓存)请求完全相同的 URL 时:
接受范围:字节 缓存控制:公共,最大年龄=55773 连接:保持活动 内容长度:1 内容范围:字节 203184-203184/480621 内容类型:音频/mpeg 日期:格林威治标准时间 2015 年 9 月 9 日星期三 18:14:12 ETag:b1d4c80b2d5d42a4bf6c1ae5efb289e6 过期时间:周四,2015 年 9 月 10 日 09:43:45 GMT 最后修改时间:星期一,2015 年 9 月 7 日 09:19:19 GMT X-时间戳:1441617558.54283 X-Trans-Id:txe8e3941ab1774f4d97794-0055ed5c71iad3
Access-Control-Allow-Origin刚刚消失了!
知道为什么 http 响应标头适用于 cURL 但不适用于 Browser 吗?谢谢。