xmlhttprequest 파일 다운로드

약속 기반 API와 함께 XMLHttpRequest를 사용 하 여 파일을 업로드/다운로드 합니다. XMLHttpRequest 개체는 정상적인 AJAX 요청을 만드는 데 사용 됩니다. 그러나 이진 파일을 다운로드 하는 경우는 응답 요청 개체의 속성을 blob로 설정 됩니다. File Api를 사용 하 여 큰 파일을 업로드 하는 작업을 최소화할 수 있습니다. 이 기법은 업로드를 여러 청크로 분할 하 고 각 부분에 대해 XHR을 생성 한 후 서버에 파일을 함께 배치 하는 것입니다. 이는 GMail에서 대용량 첨부 파일을 빠르게 업로드 하는 방식과 비슷합니다. 이러한 기술은 Google 앱 엔진의 32MB http 요청 제한을 해결 하는 데도 사용할 수 있습니다. 브라우저에서 볼 수 있는 파일 형식인 경우 파일을 탐색 하는 것에 대해 신경 쓰지 않는다면 항상 파일에 직접 저장 하는 메서드를 만드는 것이 훨씬 간단 합니다. 이진 파일을 다운로드 하는 경우 blob을 응답 유형으로 사용 합니다. 사용 하 여 결론을 종결 하는 경우는 XMLHttpRequest 상태 = 0 및 status 텍스트 = null, 즉, 요청을 수행할 수 없습니다. 그것은 보내지 않았습니다. 이에 대 한 가능성의 원인은 xmlhttprequest의 생성 시 (XMLHttpRequest)가 나중에 열려 있을 때 ()이 변경 되었을 때입니다. 예를 들어 창에 대 한 onunload 이벤트에서 발생 하는 XMLHttpRequest가 있는 경우이 경우 발생할 수 있으며, 닫을 창이 계속 남아 있을 때 예상 되는 XMLHttpRequest가 만들어지고 마지막으로 요청을 보냅니다.

창이 포커스를 잃고 다른 창이 포커스를 얻습니다. 이 문제를 방지 하는 가장 효과적인 방법은 종료 된 창에 언로드 이벤트가 트리거된 후 설정 된 새 창의 activate 이벤트에 리스너를 설정 하는 것입니다. 이 예제에서는 Blob () 생성자를 사용 하 여 처음부터 새 텍스트 파일을 만들고 해당 Blob을 서버에 업로드 합니다. 또한 코드는 사용자에 게 업로드 진행률을 알리기 위한 처리기를 설정 합니다. 자습서의 끝에 있는 데모에 대 한 다운로드 코드는 HTTP 요청을 보내고, XMLHttpRequest 개체를 만들고, URL을 열고, 요청을 보냅니다. 트랜잭션이 완료 되 면 개체는 응답 본문 및 결과의 HTTP 상태와 같은 유용한 정보를 포함 합니다. HTML5 우주에서 알려지지 않은 영웅 중 하나는 xmlhttprequest입니다. 엄밀히 말해서 XHR2는 HTML5가 아닙니다. 그러나, 그것은 브라우저 공급 업체 핵심 플랫폼을 만드는 증분 개선의 일부.

오늘날의 복잡 한 웹 앱에서 중요 한 역할을 담당 하기 때문에 새로운 케이크 가방에 XHR2 포함 됩니다. 현재 대부분의 웹 응용 프로그램은 사용자가 파일을 다운로드할 수 있는 일반 링크를 표시 합니다. 링크를 클릭 하면 브라우저가 파일 임을 감지 하 고 사용자가이를 다운로드할 수 있도록 합니다. 이 방법은 사용자가 파일을 다운로드 하도록 허용 하는 가장 쉬운 방법입니다. 파일을 다운로드 한 다음 파일의 바이트를 조작 해야 하는 복잡 한 경우 (예: Javascript “PPT 뷰어”를 빌드하는 경우) arraybuffer를 응답 유형으로 설정 합니다.

Comments are closed

© 2019 Julie Lévesque. All Rights Reserved.
Another site by Webrunner Media