Opera ドキュメントからの引用(最初に見つけたリンク):
Access-Control-Allow-Headers の適切な値は、標準ヘッダーまたはカスタム ヘッダーです。クロスオリジン リクエストが成功するには、その値が Access-Control-Request-Headers ヘッダーの値と一致する (または含まれる) 必要があります。
jQueryを使用してリクエストを送信しています。私がコメントアウトした場合setRequestHeader
:
$(function() {
$.ajax({
url: 'http://silex.local/users',
method: 'GET',
beforeSend : function(req) {
//req.setRequestHeader('Authorization', 'FID ds7sd6:32n8942b3672n2');
}
});
});
サーバーが次のように応答しているため、機能しないはずです。
HTTP/1.0 200 OK
Date: Sat, 11 Aug 2012 02:15:14 GMT
Server: Apache/2.2.22 (Win32) PHP/5.3.14
X-Powered-By: PHP/5.3.14
Cache-Control: no-cache
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, POST, PUT, PATCH, DELETE
Access-Control-Allow-Headers: Authorization
Connection: close
Content-Type: application/json; charset=utf-8
クライアントがリクエストしている間:
GET http://silex.local/users HTTP/1.1
Host: silex.local
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:14.0) Gecko/20100101 Firefox/14.0.1
Accept: */*
Accept-Language: it-it,it;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Proxy-Connection: keep-alive
Referer: http://localhost/test.html
Origin: http://localhost
Cache-Control: max-age=0
私は何が欠けていますか?これが奇妙な質問である場合は申し訳ありません.CORSを初めて使用します...