33

さらに使用するためにファイルをダウンロードしたいのですが、これが私が見つけた最良の方法ですが、beforeSendEventによって作成されたログを見ると、URLは次のようなqueryStringによって変更されています。

http://blabla.com/test.swf?_=1346484617818

数字もランダムです。

なぜこれが起こるのだろうか!!!!

var url = 'http://blabla.com/test.swf';

$(document).ready(function () {
           $.ajaxSetup({
             'beforeSend':function () {
                          console.log(this.url);}
           });

        $.ajax({
            url:url,
            dataType:"script",
            });
});
4

2 に答える 2

50

キャッシュを使用するだけです:true。jQueryはURLの末尾にタイムスタンプを自動的に追加し、ajaxリクエストがキャッシュされないようにします。

jqueryドキュメントから

デフォルト: true、dataTypeの場合はfalse'script'および'jsonp'
に設定するとfalse、要求されたページがブラウザによってキャッシュされないように強制されます。キャッシュを設定するとfalse、クエリ文字列パラメータ" _=[TIMESTAMP]"もURLに追加されます。

$.ajaxSetup({'cache':true});

JqueryAjaxドキュメント

于 2012-09-01T06:49:49.340 に答える
-1

私もこの問題を抱えていましたが、問題はURLにあることがわかりました。httpを使用する代わりに、httpsを使用する必要があります。つまり、これの代わりに、これが私が意味することです:

var url = 'http://blabla.com/test.swf';

これを使って:

var url = 'https://blabla.com/test.swf';

私のケースでは、ローカルホスト用のIISサーバー(asp.net、ノックアウト、JQuery Ajax)を使用していたことに注意してください。

于 2019-02-28T15:11:25.227 に答える