3

POST 和 GET 请求可以在一个 HttpRequest 中发生吗?

如果是这样,我如何检测其中一个或另一个的存在?

IE

request.method == 'POST'

request.method == 'GET'

不能同时为真。(好吧,我想人们可以通过定义 == 或将方法调用重定向到一个函数来做一些可怕的黑客行为,但是 ew。)

4

2 回答 2

6

您不返回请求,而是返回响应。响应不关心它是否为GETor POST,它取决于您的实现,您想要做什么并响应这些请求。

编辑评论:您可以安全地使用检查请求类型的方法,即使用request.method == 'POST'or 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

事实证明,一个 HTTP 响应(如在底层技术中)不能/不应该同时返回 POST 和 GET 数据。我认为我的这种基本误解使人们感到困惑。

于 2012-07-20T11:03:14.810 回答