>  기사  >  웹 프론트엔드  >  jQuery의 ajax를 사용하여 blob 파일을 다운로드하는 방법

jQuery의 ajax를 사용하여 blob 파일을 다운로드하는 방법

不言
不言원래의
2018-07-02 17:08:594945검색

이 글은 jQuery의 ajax blob 파일 다운로드에 대한 관련 정보를 주로 소개합니다. 매우 훌륭하고 참고할 만한 가치가 있습니다. 필요하신 분들은 참고하시면 됩니다.

사용하기 전에 비슷한 내용을 작성한 적이 있습니다. ng하고 반응합니다. 기능적이지만 부드럽습니다(그래서 세부 사항은 잊어버리세요). 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 중국어 홈페이지를 주목해주세요!

관련 권장 사항:

네이티브 JS의 Ajax 요청 함수 기능 쓰기

ajaxFileUpload 비동기 업로드 파일 사용 소개

위 내용은 jQuery의 ajax를 사용하여 blob 파일을 다운로드하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.