1

私はこの機能を持っています

$.ajax({
    url: aurl,
    method: 'GET',
    beforeSend: function (req) { req.setRequestHeader('Authorization', auth); },
    cache: false,
    dataType: "json",
    error: function () {
        //error code
    },
    success: function (t) {
        //success code
    }
});

ただし、パラメータ:

  • 方法
  • 送信前
  • キャッシュ

私のブラウザFF3、IE8、およびChromeでは無視されます。したがって、そこに何を置いても、ブラウザによって指定された URL に送信されるリクエストは変更されません。たとえば、メソッドを「POST」に設定できない、またはさらに重要なことに、リクエストの一部として Authorization パラメータを配置できないため、HTTP Authorization フォーム処理されます。

もう 1 つの奇妙な動作は、dataType:"json" でない限り、FF3 で LiveHTTPHeaders を使用して示されているように、要求または応答が送受信されないことです。たとえば、dataType:"xml" の場合。

URL はブラウザによって正しく処理されているようです。

これらの問題を抱えている人は、これらの追加のパラメーターが送信されるようにするにはどうすればよいですか?

4

1 に答える 1

3

URL はリモートかローカルか?

JQueryのドキュメントによると

注: すべてのリモート (同じドメイン上ではない) 要求は、GETwhen'script'または'jsonp'isとして指定する必要がありますdataType(DOM スクリプト タグを使用してスクリプトをロードするため)。XMLHttpRequestこれらのリクエストでは、オブジェクトを必要とする Ajax オプションは使用できません。XHRcomplete 関数と success 関数は完了時に呼び出されますが、オブジェクトを受け取りません。beforeSendおよびdataFilter関数は呼び出されません。

オプションのデフォルト値は、 「' ' および ' 'のcache場合は false」です。dataTypescriptjsonp

于 2009-04-07T10:26:16.997 に答える