Jquery Ajax 요청 파일 다운로드 동작 실패 원인 분석 및 해결 방법

亚连
풀어 주다: 2018-05-24 14:55:29
원래의
2156명이 탐색했습니다.

jQuery는 실제로 JS 애플리케이션을 빠르게 개발하는 데 도움이 되는 매우 우수한 경량 JS 프레임워크이며 어느 정도 JavaScript 코드 작성 습관을 바꾸었습니다. 이 기사에서는 Jquery Ajax 요청 파일 다운로드 작업 실패를 소개하는 데 중점을 둡니다. 원인 분석 및 해결 방법, ajax 요청 실패 이유 분석에 관심 있는 친구들, 함께 배워보세요

jQuery는 실제로 JS 애플리케이션을 빠르게 개발하는 데 도움이 될 수 있는 아주 좋은 경량 JS 프레임워크이며, 어느 정도는 JavaScript 코드 작성 습관을 바꾸었습니다.

더 이상 헛소리하지 말고, 먼저 실패 이유를 분석해 보겠습니다.

1. 실패 이유

일반적으로 요청한 브라우저는 응답 출력을 처리합니다. png 생성, 파일 다운로드 등과 같은 서버에 의해 수행됩니다. 그러나 Ajax 요청은 "문자 유형" 요청일 뿐입니다. 즉, 요청된 콘텐츠는 텍스트 유형으로 저장됩니다. 파일 다운로드는 바이너리 형식입니다. 반환된 응답은 읽을 수 있지만 읽기만 가능하며 실행할 수 없습니다. 직설적으로 말하면 js는 브라우저의 다운로드 처리 메커니즘과 프로그램을 호출할 수 없습니다.

2. 솔루션

1) jquery를 사용하여 양식을 만들고 제출하여 파일 다운로드를 구현할 수 있습니다.

var form = $("<form>");
form.attr("style","display:none");
form.attr("target","");
form.attr("method","post");
form.attr("action",rootPath + "T_academic_essay/DownloadZipFile.do");
var input1 = $("<input>");
input1.attr("type","hidden");
input1.attr("name","strZipPath");
input1.attr("value",strZipPath);
$("body").append(form);
form.append(input1);
form.submit();
form.remove();
로그인 후 복사

2) a 태그를 직접 사용하여 파일 다운로드를 구현할 수 있습니다. =”다운로드 주소”> 다운로드하려면 클릭하세요

3) 숨겨진 iframe이나 새 양식을 사용하여 해결하세요.

PS: AJAX 요청 $.ajax 메서드 사용

jQuery의 $.ajax 메서드를 사용하여 AJAX 요청을 더 자세히 제어할 수 있습니다. AJAX 요청을 세밀하게 제어할 수 있습니다.

$.ajax 메서드 구문

$.ajax(options)parametersoptions(Object) 객체의 인스턴스, 해당 속성 이 작업에 대한 매개변수가 정의되어 있습니다. 자세한 내용은 아래 표를 참조하세요. 반환 값XHR 인스턴스

옵션 세부 범위 값

name

type

description

url

string

요청한 URL 주소

type

String

사용할 HTTP 메서드입니다. 일반적으로 POST 또는 GET입니다. 생략하면 기본값은 GET

data

Object

요청에 쿼리 매개변수로 속성이 전달되는 객체입니다. GET 요청인 경우 데이터가 쿼리 문자열로 전달되고, POST 요청인 경우 데이터가 요청 본문으로 전달됩니다. 두 경우 모두 값 인코딩을 처리하는 것은 $.ajax() 유틸리티 함수입니다

dataType

String

응답에 반환될 것으로 예상되는 데이터 유형을 식별하는 데 사용되는 키워드입니다. 이 값은 데이터가 콜백 함수에 전달되기 전에 수행되는 후속 처리(있는 경우)를 결정합니다. 유효한 값은 다음과 같습니다.

xml - 응답 텍스트가 XML 문서로 구문 분석되고 결과 XML DOM이 콜백 함수에 전달됩니다.

html - 응답 텍스트가 처리되지 않은 상태로 콜백 함수에 전달됩니다. 반환된 HTML 조각 내의 모든

인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!