1

我有一些关于http get vs post的常见问题,如果有人能用例子澄清一下,那就太好了......

例子:-

这是我的看法

视图.py

def search(request):
    if request.method == 'POST':
        print 'request.post=', request.POST
        print 'request.get=', request.GET
        print 'request.method=', request.META.get('REQUEST_METHOD')
        if 'q' in request.GET:
            message = 'You searched for :%r' % request.POST['q']
        else:
            message = 'You submitted an empty form'
        return render(request, 'search_form.html', {'message': message})
    return render(request, 'search_form.html')

search_form.html

<body>
    {% if message %}
        <div> {{ message }} </div>
    {% else %}
        <form action="/polls/search/" method="post">{% csrf_token %}
            <input type="text" name="q">
            <input type="submit" value="Search">
        </form>
    {% endif %}
</body>
  1. POST 请求是否仅用于 HTML 表单?如果没有,还有什么其他方法可以做到这一点?
  2. 任何没有表单的请求总是一个 GET 请求?
  3. 如何使用表单处理 GET 和 POST..

谢谢。

4

1 回答 1

1

POST 请求是否仅用于 HTML 表单?如果没有,还有什么其他方法可以做到这一点?

您也可以发布 json 或 xml。比如jquery使用json或者xml数据类型的ajax post

任何没有表单的请求总是一个 GET 请求?

http 方法有 4 种类型,GET、POST、DELETE 和 PUT。根据您的使用方式,您可以使用其中任何一种。

更多关于此的文章。http://bradley-holt.com/2009/07/html-5-http-methods-rest/

.

于 2013-02-27T01:40:08.280 回答