簡単な REST クライアントを使用してテストしています。単純な JPEG を送信して、次の content-Type を試しました: Content-Type: image/jpeg Content-Type: multipart/form-data
外部のサードパーティ REST 接続を許可するために、csrftoken 認証がオフになっていることにも注意してください。
(画像は残りのクライアント経由で添付されています)wiresharkをチェックし、パケットは上記のパラメーターに従ってセットアップされます。
Django - request オブジェクトにはいくつかの変数があります: request.body request.FILES
POST が Django サーバーによって受信された後、リクエスト オブジェクトは常にすべてのデータ/ペイロードを request.body に格納します。画像や添付ファイルを request.FILES に入れてはいけませんか? content-type または POST で何かが正しく設定されていませんか。
非常に単純なコード。ログに出力しようとしているだけです。post 内のすべてのオブジェクトは request.body に移動し続けます
def testPost(request):
print request.body
print request.FILES
return HttpResponse()
Wireshark パケット:
Hypertext Transfer Protocol
POST /testPost/ HTTP/1.1\r\n
Host: MYURL.com:8000\r\n
Connection: keep-alive\r\n
Content-Length: 8318\r\n
Origin: chrome-extension://aejoelaoggembcahagimdiliamlcdmfm\r\n
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36\r\n
Content-Type: image/jpeg\r\n
Accept: */*\r\n
Accept-Encoding: gzip,deflate,sdch\r\n
Accept-Language: en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4\r\n
Cookie: ******; csrftoken=**********\r\n
\r\n
[Full request URI: http://MYURL.com:8000/testPost/]
[HTTP request 1/1]
JPEG ファイル交換フォーマット