1

私は次のテストコードを持っています:

@csrf_exempt
def view_test(request):
    if request.method=="POST":
        if 'Var1' in request.POST :
            return HttpResponse("Flip")
        else:
            return HttpResponse("Flop")

GPRS経由でdjangoサーバーにデータを渡したいのですが、この「HTTPパケット」を送信しています

    POST /test_pkt/ HTTP/1.1 \r\n
    Host: test.my_django_server.com \r\n
    User-Agent: Mozilla/5.0 \r\n
    Accept: text/plain; q=0.5, text/html \r\n
    Accept-Encoding: deflate \r\n
    Accept-Language: en-US \r\n
    Connection: keep-alive \r\n
    Referer: http://test.my_django_server.com/test_pkt/ \r\n
    Content-Type: application/x-www-form-urlencoded \r\n
    Content-Length: 11 \r\n
    Var1=toggle\r\n
    \r\n

それに応じて私は

    HTTP/1.1 200 OK
    Date: Tue, 02 Oct 2012 13:11:23 GMT
    Content-Type: text/html; charset=utf-8
    Transfer-Encoding: chunked
    Connection: keep-alive
    Server: gunicorn/0.14.6

    c
    flop
    0

私は何か間違ったことをしていることを知っていますが、私は見つけることができませんでした。誰かが私を正しい方向に向けることができますか?

4

1 に答える 1

1

コメントで述べたように、POSTデータはリクエストの本文に入ります。Content-Length本文は常に空白行でヘッダーから区切られているため、最後のヘッダー( )と本文の間に空白行が必要です。

于 2012-10-02T15:36:13.343 に答える