Skip to main content
 首页 » 编程设计

python之如何将 Django 请求发布到外部服务器

2024年08月29日27sharpest

您好,我在 Django View 中使用此方法将文件发布到不同的服务器。我收到 HTTP 415 错误,提示请求的媒体类型。我已经调试了请求并将其内容复制并粘贴到 fiddler 中。当我从 fiddler 发布相同的内容时,它起作用了。所以我不明白为什么它不能使用 python 请求包。

谁能帮我解决这个问题?

谢谢。

def upload(request): 
    if request.method == 'POST': 
        url=settings.WEBSERVICES_URL+'validate' 
        r = requests.post('http://localhost:9090/validate',data=request) 
        r2 = requests.get('http://localhost:9090/test') 
        return render_to_response("upload.html", context_instance=RequestContext(request)) 
    else: 
        return render_to_response("upload.html", context_instance=RequestContext(request)) 

请您参考如下方法:

这样做:

r = requests.post('http://localhost:9090/validate', data=request.POST) 

当您只需要其发布数据时,您正在将完整的 django.http.HttpRequest 对象传递给 requests.post。