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

Nav*_*777 6 python django httprequest django-views

我想这样向http我的另一台服务器发送请求django view

def django_view(request):
    response = send_request('http://example.com')
    result = do_something_with_response(response)
    return HttpResponse(result)
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

AKS*_*AKS 7

您可以使用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)
Run Code Online (Sandbox Code Playgroud)

唯一的警告是,如果您在此处进行操作,则不再ajax(异步JavaScript和XML)。替代方法是您从django视图正常加载网页,然后在javascript中执行所有AJAX请求-进一步处理响应并将其呈现在页面中。