1

私のウェブサイトでのクロスドメイン トークに CORS を使用しています。写真に示されている応答ヘッダーは問題ないように見えますが、応答がありません。まだ空白であるか、応答が返されます。添付の画像を見て、誰かが私のアプローチのエラーを予測できますか?

サーバー側では、このスニペットを使用しています

    header("Access-Control-Allow-Origin: *");
    header("Access-Control-Allow-Credentials: true ");
    header("Access-Control-Allow-Methods: GET, POST");
    header("Access-Control-Allow-Headers: Content-Type, Depth, User-Agent, X-File-Size, X-Requested-With, If-Modified-Since, X-File-Name, Cache-Control");

クライアント側にいる間、私は持っています:-

function getXMLHTTPRequest() {
try {
req = new XMLHttpRequest();
} catch(err1) {
try {
req = new ActiveXObject("Msxml2.XMLHTTP");
} catch (err2) {
try {
req = new ActiveXObject("Microsoft.XMLHTTP");
} catch (err3) {
req = false;
}
}
}
return req;
}

var http899 = getXMLHTTPRequest();

http899.open("GET", modurl, true);
http899.setRequestHeader('Content-Type', 'text/html');
http899.onreadystatechange = useHttpResponse899;
http899.send(null);

ここに画像の説明を入力

4

2 に答える 2

2

必ずしも完全な答えではありませんが、「Access-Control-Allow-Origin」ヘッダーで複数のエントリを受け入れないブラウザもあると思います。Firefoxがその1つであるかどうかはわかりません。

受け入れたいオリジンのリストにある場合は、リクエストの「Origin」ヘッダーをレスポンスの「Access-Control-Allow-Origin」にコピーしてみてください。

于 2012-08-14T14:05:50.660 に答える
1

サーバーに問題がありました。別のサーバーで同じコードを試したところ、うまくいきました! 共有ホスティングを使用していましたが、サービス プロバイダーによって無効にされていました。

于 2012-08-15T04:28:16.777 に答える