1

AJAX 呼び出しが成功したことを確認する正しい方法は何ですか?

私はprototype.jsで見る

    return !status || (status >= 200 && status < 300);

そしてjQueryで:

    // IE error sometimes returns 1223 when it should be 204 so treat it as success, see #1450
    return !xhr.status && location.protocol == "file:" ||
        ( xhr.status >= 200 && xhr.status < 300 ) || xhr.status == 304 || xhr.status == 1223;

どちらが正しいですか?Javascript ライブラリを使用せず、基本的な Javascript で AJAX を記述する場合、どちらを使用する必要がありますか?

4

2 に答える 2

5

プロトタイプは、有効な HTTP 成功コードのみを成功として扱うため、より「正しい」ように見えます。jQuery は、成功コードであることが多いバグやその他の事柄を考慮しているため、より堅牢です。

于 2009-05-29T11:01:24.980 に答える
1

HTTP ステータスは次のカテゴリに分類されます。

2XX: 成功

3XX: リダイレクト

4XX: クライアント エラー

5XX: サーバー エラー。

したがって、200-300 は ajax 呼び出しの「OK」の結果です。

ステータス コードの詳細については、http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html をご覧ください。

乾杯、

ジュニア。

于 2009-05-29T11:21:28.043 に答える