3

この問題は、Safari for Mac でのみ発生します。次のように、クリーンな json データ ファイルを読み込んでいます。

$.ajax({
        url : url,
        type : 'POST',
        dataType : 'json',
        contentType : 'application/json; charset=utf-8',
        crossdomain: true,
        context : contextObj.context,
        success : function(data) {
            // Irrelevant

            callBackHandler.call(contextObj.context, event);
        },
        error: function (xhr, ajaxOptions, thrownError) {
            console.log(xhr.status);
                console.log(thrownError); 
        }
    });

私のCORS対応サーバーには次のものがあります。

Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Methods "GET, POST, OPTIONS"
Header set Access-Control-Allow-Headers "Content-Type, If-Modified-Since, If-None-Match, *"
Header set Access-Control-Max-Age "3600"

リクエストヘッダーをキャプチャしましたが、私が見る唯一の違いは次のとおりです。明確にするために、失敗したリクエストには次のものが含まれていますが、次の更新には次のものが含まれていません。したがって、Access-Control-Allow-Headers への項目の追加:

If-Modified-Since: Fri, 08 Mar 2013 15:57:07 GMT
If-None-Match: "6801d-c550-4d76be008fac0"

これはサーバー構成の問題ですか、jQuery の使用法ですか、それとも何か他の問題ですか? Safari が 1 回おきの更新で一貫してヘッダーを変更するのは奇妙です。

4

0 に答える 0