如何在django视图中向另一台服务器发送请求?

时间:2016-03-31 05:30:32

标签: python django django-views httprequest

我想向我http中的其他服务器发送django view个请求,如下所示:

def django_view(request):
    response = send_request('http://example.com')
    result = do_something_with_response(response)
    return HttpResponse(result)

我该怎么做?

1 个答案:

答案 0 :(得分:5)

您可以使用python requests库发送请求并获取响应。但是您需要根据需要格式化响应。

以下是GET请求的示例:

import requests

def django_view(request):
    # get the response from the URL
    response = requests.get('http://example.com')
    result = do_something_with_response(response)
    return HttpResponse(result)

唯一需要注意的是,如果你在这里执行它,它将不再是ajax(异步JavaScript和XML)。另一种方法是从django视图正常加载网页,然后在javascript中执行所有AJAX请求 - 进一步处理响应并在页面中呈现它。