ファイルダウンロードのHTTPリクエストは、JQueryajax呼び出しを停止します

ReturnToZero

問題:

私が構築しているサイトでは、2つのJQueryajaxロングポーリング呼び出しが常に保留されています。私は今、ファイルのダウンロード機能を入れようとしています。そのため、リンクが押されると、ユーザーは[名前を付けて保存]ボックスでプロンプトが表示されます。このファイルのダウンロードは正常に機能しています。問題は、リンクが押されると、2つのajax呼び出しがキャンセルされることです。

ajax呼び出しをキャンセルしないか、ajax呼び出しをすぐに設定できるようにしようとしています。

リンクのコードは次のとおりです。

HTML:

<a href="/test" id="testfile">Tasks</a>

JS:

$(document).on('click',"#testfile",function(event){
    event.preventDefault();
    var href=$(this).attr('href');
    window.location.href = href;
    updater();                               /* AJAX CALL #1 */
    notifier();                              /* AJAX CALL #2 */
});

私が試したこと:

上記のコードは、ダウンロードを開始した後、2つのajax呼び出しを呼び出そうとしていました。これは機能していません。ダウンロードが完了した後に呼び出しが開始されるように遅延を入れた場合、それは機能しますが、ファイルが大きくなる可能性があるため、これを受信するのに不明な時間がかかるため、これはもちろん悪い解決策です。

なぜajax呼び出しがキャンセルされるのか本当に混乱していますか?リンクを押すとページがアンロードされているためですか?

1つのスレッドを持つ開発サーバーでのみ実行しているので、リンクをたどった直後にセットアップしようとしている新しいajax呼び出しは、サーバーがビジーであるために失敗する可能性があります。


解決済み:

サイトの下部に非表示のiframeを追加し、リンクでそれをターゲットにしました。また、ajax呼び出しがキャンセルされていないため、JSコードも削除しました。

コードは次のようになります。

HTML:

<a href="/test" target="filetargetframe"  id="testfile">Tasks</a>

********

<iframe name="filetargetframe" style="display:none"></iframe>
ReturnToZero

yoavmatchulskyからの回答を使用して、問題は解決されました。

サイトの下部に非表示のiframeを追加し、リンクでそれをターゲットにしました。また、ajax呼び出しがキャンセルされていないため、JSコードも削除しました。

コードは次のようになります。

HTML:

<a href="/test" target="filetargetframe"  id="testfile">Tasks</a>

********

<iframe name="filetargetframe" style="display:none"></iframe>

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Node + Angular:HTTPリクエストを含むファイルをダウンロードします

分類Dev

AJAXリクエストへの応答としてcsvファイルをダウンロードします

分類Dev

Linuxの場合-クライアントアプリの呼び出しとダウンロードファイルのファイルを保存するフォルダーのアクセス許可を設定する方法

分類Dev

(解決済み)capybaraを使用したヘッドレスオートメーションでajax関数を呼び出す要素をクリックするとファイルのダウンロードに失敗しました

分類Dev

DomPDFはLaravelでAJAXリクエストのファイルをダウンロードしません

分類Dev

Ajaxのコントローラーを呼び出して、Grailsのファイルをダウンロードします

分類Dev

HTTP GETリクエストのヘッダーを設定し、ファイルのダウンロードをトリガーする方法

分類Dev

Restangularリクエストを使用してRESTAPIからファイルをダウンロードします

分類Dev

Python:リクエストまたはurllib3を使用して認証付きのファイルをダウンロードします

分類Dev

リクエストモジュールを使用してファイルをダウンロードすると、空のファイルが作成されます

分類Dev

PythonでWebURLを使用してファイルをダウンロードする方法は?ブラウザからのダウンロードは機能しますが、Pythonのリクエストからは機能しません

分類Dev

サーバーにJSONPOSTリクエストを送信し、バイナリ応答(Excelファイル)を受信します。ダウンロード方法は?

分類Dev

.cssファイル内の画像リンクまたはlaravelの.jsファイルを使用してコントローラーを呼び出す

分類Dev

rubyファイルまたはrakeスクリプトファイルでコントローラーのメソッドを呼び出す方法

分類Dev

DRUPAL 7:Ajax呼び出しからダウンロードリクエストをトリガーする

分類Dev

phpでjQueryajaxを介してテキストファイルを投稿し、応答ファイルをダウンロードします

分類Dev

GridFSストリームNodeJSバックエンド/ Reactフロントエンドからファイルをダウンロードします

分類Dev

Web API呼び出しを介してファイルをダウンロードしようとすると、「HTTPヘッダーが送信された後、サーバーはステータスを設定できません」というエラーを解決する方法は?

分類Dev

Python(Jinja2)でファイルをダウンロードするには、[エクスポート]ボタンをクリックしますか?

分類Dev

window.onbeforeunloadがwindow.locationで呼び出されてファイルをダウンロードします

分類Dev

ajax呼び出しの成功関数内でファイルをダウンロードする方法はありますか?

分類Dev

ajax呼び出しの成功関数内でファイルをダウンロードする方法はありますか?

分類Dev

ウェブサイトにログインし、Pythonリクエストでファイルをダウンロードします

分類Dev

コントローラ内でのhttp呼び出し後に部分ファイルをロードする

分類Dev

固定スペースを割り当てるPHPを使用してtxtファイルをエクスポートおよびダウンロードします

分類Dev

ネットワークドライブへのシステムディレクトリ呼び出しはファイルパスを削除します

分類Dev

ajax呼び出しを介して大きなファイルをダウンロードすると、Chromeブラウザで「ネットワークエラー」が発生します

分類Dev

Pythonでリクエストのダウンロードファイルをフリーズ解除する方法は?

分類Dev

RestSharpを使用してファイルをダウンロードする方法は?具体的には、何をリクエストに渡すのですか?

Related 関連記事

  1. 1

    Node + Angular:HTTPリクエストを含むファイルをダウンロードします

  2. 2

    AJAXリクエストへの応答としてcsvファイルをダウンロードします

  3. 3

    Linuxの場合-クライアントアプリの呼び出しとダウンロードファイルのファイルを保存するフォルダーのアクセス許可を設定する方法

  4. 4

    (解決済み)capybaraを使用したヘッドレスオートメーションでajax関数を呼び出す要素をクリックするとファイルのダウンロードに失敗しました

  5. 5

    DomPDFはLaravelでAJAXリクエストのファイルをダウンロードしません

  6. 6

    Ajaxのコントローラーを呼び出して、Grailsのファイルをダウンロードします

  7. 7

    HTTP GETリクエストのヘッダーを設定し、ファイルのダウンロードをトリガーする方法

  8. 8

    Restangularリクエストを使用してRESTAPIからファイルをダウンロードします

  9. 9

    Python:リクエストまたはurllib3を使用して認証付きのファイルをダウンロードします

  10. 10

    リクエストモジュールを使用してファイルをダウンロードすると、空のファイルが作成されます

  11. 11

    PythonでWebURLを使用してファイルをダウンロードする方法は?ブラウザからのダウンロードは機能しますが、Pythonのリクエストからは機能しません

  12. 12

    サーバーにJSONPOSTリクエストを送信し、バイナリ応答(Excelファイル)を受信します。ダウンロード方法は?

  13. 13

    .cssファイル内の画像リンクまたはlaravelの.jsファイルを使用してコントローラーを呼び出す

  14. 14

    rubyファイルまたはrakeスクリプトファイルでコントローラーのメソッドを呼び出す方法

  15. 15

    DRUPAL 7:Ajax呼び出しからダウンロードリクエストをトリガーする

  16. 16

    phpでjQueryajaxを介してテキストファイルを投稿し、応答ファイルをダウンロードします

  17. 17

    GridFSストリームNodeJSバックエンド/ Reactフロントエンドからファイルをダウンロードします

  18. 18

    Web API呼び出しを介してファイルをダウンロードしようとすると、「HTTPヘッダーが送信された後、サーバーはステータスを設定できません」というエラーを解決する方法は?

  19. 19

    Python(Jinja2)でファイルをダウンロードするには、[エクスポート]ボタンをクリックしますか?

  20. 20

    window.onbeforeunloadがwindow.locationで呼び出されてファイルをダウンロードします

  21. 21

    ajax呼び出しの成功関数内でファイルをダウンロードする方法はありますか?

  22. 22

    ajax呼び出しの成功関数内でファイルをダウンロードする方法はありますか?

  23. 23

    ウェブサイトにログインし、Pythonリクエストでファイルをダウンロードします

  24. 24

    コントローラ内でのhttp呼び出し後に部分ファイルをロードする

  25. 25

    固定スペースを割り当てるPHPを使用してtxtファイルをエクスポートおよびダウンロードします

  26. 26

    ネットワークドライブへのシステムディレクトリ呼び出しはファイルパスを削除します

  27. 27

    ajax呼び出しを介して大きなファイルをダウンロードすると、Chromeブラウザで「ネットワークエラー」が発生します

  28. 28

    Pythonでリクエストのダウンロードファイルをフリーズ解除する方法は?

  29. 29

    RestSharpを使用してファイルをダウンロードする方法は?具体的には、何をリクエストに渡すのですか?

ホットタグ

アーカイブ