【问题标题】:Python: Requests to local server not workingPython:对本地服务器的请求不起作用
【发布时间】:2017-11-22 08:01:03
【问题描述】:

我正在使用 python 库requests 尝试向我的本地服务器发送一个发布请求。我已成功安装和导入请求 - 我似乎无法从本地服务器发布或获取数据。

服务器和我的python程序都在同一台机器上,服务器目前是Django的开发服务器。

我正在尝试什么:

domain = 'localhost:8000'
user = 'username'
password = 'password'
data = 'some data to be sent'
r = requests.post(domain, data auth=(user,password))

引发异常:

raise InvalidSchema("No connection adapters were found for '%s'" % url)
requests.exceptions.InvalidSchema: No connection adapters were found for 'localhost:8000'

我已经完成了所有基本的事情,比如确保服务器启动并运行。我也尝试用 127.0.0.1:8000 替换 localhost。

【问题讨论】:

    标签: python django python-3.x python-requests


    【解决方案1】:

    您需要使用正确的 URL,包括协议:

    domain = 'http://localhost:8000'
    

    【讨论】:

    • 谢谢你,成功了。当这个网站允许我这样做时,我会选择这个答案!
    • Daniel,你能不能给我指出有关如何处理来自 Django 的这些 POST 请求的任何资源?我会发布另一个问题,但在这一点上它太宽泛了,我担心它会被关闭或否决。
    • 恐怕我不确定你在问什么。处理什么请求,在哪里?您能不能举一个具体的例子来说明您正在尝试做什么以及遇到的问题?
    • 抱歉,内容太笼统了,我会提供更多细节。所以使用 requests 库(你帮我做的),一个 python 程序向我的 Django 应用程序发送了一个 POST 请求(包括一个字符串)。现在我想在 Django 应用程序中“处理”或处理该请求,特别是通过使用收到的字符串创建一个新的数据库条目。我在网上阅读的所有内容都假设我使用表单来获取此 POST 数据——但我使用的是发送所述请求的 python 程序。
    • 这对于一个单独的问题来说似乎已经足够具体了。但是我还是不太明白你的问题出在哪里,请求来自表单还是单独的应用程序没有区别,你仍然可以通过完全相同的方式访问request.POST
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-13
    • 1970-01-01
    • 1970-01-01
    • 2017-04-23
    • 2011-08-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多