3

1 つの HttpRequest で POST および GET 要求を実行できますか?

もしそうなら、どうすればどちらかの存在を検出できますか?

すなわち

request.method == 'POST'

request.method == 'GET'

両方を同時に真にすることはできません。(まあ、== の定義や、メソッドの呼び出しを関数にリダイレクトすることで恐ろしいハッカーを実行できると思いますが、ええと。)

4

2 に答える 2

6

リクエストではなくレスポンスを返します。応答は、それがforであるか、GETまたはPOSTであるかを気にしません。それは、あなたが何をしたいかに関してあなたの実装に依存し、それらの要求に応答します。

コメントの編集:リクエストのタイプをチェックする方法を安全​​に使用できます。つまり、request.method == 'POST'またはを使用しrequest.method == 'GETます。もう一度確認したい場合はrequest.POST、同様に確認してください。例えば

if request.method == 'POST' and request.POST:
    #do POST processing

elif request.method == "GET" and request.GET :
    #do GET processing
于 2012-07-19T11:35:34.670 に答える
1

1 つの HTTP 応答 (基盤となるテクノロジのように) は、POST データと GET データの両方を返すことができない/返すべきではないことが判明しました。私のこの根本的な誤解が人々を混乱させたと思います。

于 2012-07-20T11:03:14.810 に答える