当前位置:  开发笔记 > 编程语言 > 正文

Python请求POST不起作用

如何解决《Python请求POST不起作用》经验,为你挑选了1个好方法。

我正在使用python请求模块来调用API.在我将代码推送到AWS之前,一切正常.即使在AWS上,如果我在开发服务器上工作也是有效的,即ec2.####.amazon.com:8000.

这是我的代码:

r = requests.post(api_url, data = {"var 1":"value", "var 2":"value"})

我的API url不允许使用GET方法,所以作为响应我收到错误,该GET方法不允许,这意味着requests.post读取为get

知道这里有什么问题.



1> user5594493..:

实际上,问题是由于SSL引起的,如果您的服务器正在使用https方法,则需要在其中添加以下行requests.post

r = requests.post(api_url, data = {"var 1":"value", "var 2":"value"}, verify=True)

还要确保您的api_url https不包含http

我为此写了一个小函数

def get_base_url(request):
    host = get_host(request)
    if request.is_secure():
        return '{0}{1}/{2}'.format('https://', host, 'url')
    else:
        return '{0}{1}/{2}'.format('http://', host, 'url')

推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有