ホームページ  >  記事  >  ウェブフロントエンド  >  jQueryのajaxを使用してBLOBファイルをダウンロードする方法

jQueryのajaxを使用してBLOBファイルをダウンロードする方法

不言
不言オリジナル
2018-07-02 17:08:594953ブラウズ

この記事は主に jQuery の ajax による blob ファイルのダウンロードに関する情報を紹介するもので、必要な方は参考にしてください。機能的ですが、スムーズです (詳細は忘れてください)。 jQueryが動かないのはなぜですか?具体的なシナリオを確認したところ、jq の ajax コールバックが文字列形式の応答データを確実な方法で解析していることがわかりました。

gg を確認したところ、国内の解決策はこのシナリオで jq を使用するのではなく、手動で XMLHttpRequest を作成することであることがわかりました。この方法は非常に信頼性が高いですが、以前にカプセル化された jq ajax は使用できません。

jq のドキュメントを確認し、jq が提供する jQuery.ajaxSetup() インターフェイスに基づいてデータ型を自分で拡張するつもりでしたが、理解できませんでした。その後、github で Daniel によってパッケージ化された jq プラグインを見つけました。

その後、次のように書くことができます:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>blob demo</title>
</head>
<body>
<img id="img" src="" />
<script src="//cdn.bootcss.com/jquery/2.2.1/jquery.js" charset="utf-8"></script>
<script src="jquery-ajax-blob-arraybuffer.js"></script>
<script type="text/javascript">
$.ajax({
url: "./face.jpg",
type: "get",
dataType: "blob", //扩展出了blob类型
}).done(function(data, status, jqXHR){
var reader = new window.FileReader();
reader.readAsDataURL(data);
reader.onloadend = function() {
document.getElementById("img").src=reader.result;
}
}).fail(function(jqXHR, textStatus) {
console.warn(textStatus);
});
</script>
</body>
</html>

ただし、プラグインのソースコードから判断すると、Ajax を送信するための XMLHttpRequest オブジェクトも手動で構築されますが、互換性が問題になる可能性があります。さらに詳しく知りたい場合は、ここをお読みください。

上記がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。

関連する推奨事項:

ネイティブ JS の作成 Ajax リクエスト関数関数


ajaxFileUpload の使用方法の概要ファイルの非同期アップロード


以上がjQueryのajaxを使用してBLOBファイルをダウンロードする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。