내가 PUT
요청을 받아들이는 더미 장고보기했습니다 : 내가보기에 PUT
XHR 호출을 할 때, 이제PUT 403이 Aborted로 나타나는 이유는 무엇입니까?
# urls.py
url(r'^put/.*$', 'put', name='put'),
# views.py
def put(request):
print request.method
return HttpResponse()
를, 그것은 403 반환
/9월[27/2,012 22시 32분 43초] "PUT/넣어/X-비 전환/e02ed7da08d411e2bfa974de2b4d1b84? PARTNUMBER = 115 = & uploadId 35UxOsGCCG98rke3VjpazmCy.0ZFpesndJ.XPp5Bw6R2CumfIsYKP5DlBYPY3gh3I0PCwfCg4DqSRttYp75bZg-- HTTP/1.1"403 156,400
(왜340을 반환합니까, 지금은 상관 없습니다). 진짜 문제는 이것이다 :
XHR 호출은 실제 응답 (156400 콘텐츠 길이를 알) 콘텐츠로, 403 경우에도, 상태 0 (중단?!) 반환합니다.
왜 403 응답을 표시하지 않습니까?
EDIT 다음 PUT
요청과 같이 이루어진다 :
var xhr = new XMLHttpRequest();
var path = "/" + u.settings.key;
path += "?partNumber=" + (chunk + 1) + "&uploadId=" + u.upload_id;
var method = "PUT";
var authorization = "AWS " + u.settings.access_key + ":" + signature;
var blob = u.file.slice(start, end); // mozSlice/webkitSlice, depending on browser
xhr.upload.addEventListener("progress", progress_handler);
xhr.addEventListener("readystatechange", handler);
xhr.addEventListener("error", error_handler);
xhr.addEventListener("timeout", error_handler);
xhr.open(method, /*u.settings.host*/ "http://localhost:8000/put" + path, true);
xhr.setRequestHeader("x-amz-date", date);
xhr.setRequestHeader("Authorization", authorization);
xhr.setRequestHeader("Content-Type", u.settings.content_type);
xhr.setRequestHeader("Content-Disposition", "attachment; filename=" + u.file.name);
xhr.send(blob);
어떻게 PUT XHR 요청을 했습니까? –
@ KayZhu 내 편집을 확인하십시오. 기본적으로 Amazon S3에 대한 PUT 요청이지만 django 개발 서버로 이동합니다. –