我想用我的Android應用程序下面的代碼上傳文件的Django:將文件從Android上傳到DJango。 Request.FILES總是空
InputStreamEntity reqEntity = new InputStreamEntity(new FileInputStream(screenshotFile), -1);
reqEntity.setContentType("application/octet-stream");
reqEntity.setChunked(true);
HttpPost httpPost = new HttpPost(serverAddress);
httpPost.setEntity(reqEntity);
HttpClient httpClient = new DefaultHttpClient();
HttpResponse response = httpClient.execute(httpPost);
我發現stateing,以前的代碼工作在其他服務器上的許多職位像PHP,但由於某種原因,request.FILES
字典是空的,因此,我無法對上傳的文件進行任何操作。下一個方法幫我檢查內部request.FILES
和request.POST
(也空)
值以下
@csrf_exempt
def upload_file(request):
print request.FILES
print request.POST
return HttpResponse("")
我也試着更換使用InputStreamEntity reqEntity = new InputStreamEntity(new FileInputStream(screenshotFile), -1)
與FileEntity reqEntity = new FileEntity(screenshotFile, "application/octet-stream")
-as在其他的答案,但表示同樣的事情發生。
大概我應該看看其他地方,而不是在request.FILES
。有沒有人有任何線索如何解決這個問題?
編輯
我已經測試MultipartEntityBuilder
和它的作品,但是,這意味着增加額外的jar *的項目,我寧願不要。
嘗試'MultipartEntity'而不是 – RafaelC
@RafaelCardoso感謝您的評論。我編輯了這個問題來回復你的評論。 – Storo