我正在尝试使用Python向我的Node.js应用发送一个POST。这是我的代码
import urllib
import urllib2
url = my_url
values = {'email' : my_email,
'password' : my_password }
data = urllib.urlencode(values)
req = urllib2.Request(url,data)
response = urllib2.urlopen(req)
the_page = response.read()
print(the_page)
请求已发送,但由于我收到的响应与无效的登录凭据相对应,因此某些参数变得混乱。
我可以使用Postman for Chrome做同样的请求,它运行得很好。所以我知道这不是我的API。
基本上我可以用Python做GET请求,但出于某种原因,当我尝试在POST中包含参数时,它们没有正确翻译。
我已经查看了urllib,urllib2和urlencode()的文档。我找不到任何有用的东西
答案 0 :(得分:0)
我不再调试urllib2问题,因为我切换到请求,我不再拥有它们,你可以这样做:
import requests
print requests.post(my_url, data={'email': my_email, 'password': my_password}).text
如此可读,如此优雅...... 如果您的jquery应用程序返回json,您可以使用" .json()"而不是" .text"
您的问题似乎必须保留Cookie,为此,您可以使用requests session