code below:
#!/bin/env python
# -*- coding: utf-8 -*-
import sys
import requests
#headers = {'User-Agent': 'Mozilla/5.0',"ContentType":"text/xml;charset=utf-8"}
payload = {
'userName':'myusername',
'password':'mypasswd',
'callback':'jQuery17209257929018213263_1425826216682',
'redirectURL':'http://www.10010.com',
'redirectType':'01',
'productType':'01',
'pwdType':'01',strong text
'rememberMe':'01'
}
link = 'https://uac.10010.com/portal/Service/MallLogin'
s = requests.Session()
resp = s.post(link,data=payload)
print resp
print resp.content
print resp.text
当我运行代码时,我得到响应500,但是当我在浏览器中使用params复制此链接时,它可以工作,我可以登录。 我找不到原因。我需要帮助,谢谢!
答案 0 :(得分:1)
试试这个。
header_content = {'Content-type': 'application/json'}
js_data = json.dumps({'username': 'myusername',
'password': 'mypasswd',
'callback':'jQuery17209257929018213263_1425826216682',
'redirectURL':'http://www.10010.com',
'redirectType':'01',
'productType':'01',
'pwdType':'01',
'rememberMe':'01'})
response = requests.post(link, data=js_data, headers=header_content, verify=False)
if response.status_code == 200:
print(response.content)
你需要在标题中指定内容,在你的情况下它是json。此外,当您通过https执行请求时,证书验证可能会导致问题,因此请通过" verify = False"关闭验证。 json格式的错误也可能是500的原因,所以为了确保你传递适当的json对象,我建议使用json.dumps()。 希望能帮助到你。此致!
答案 1 :(得分:-1)
出现此错误时,请先检查您的网页是否可以在浏览器中加载...
localhost / codeigniter_folder_name / index.php
它可能显示一些关于权限的错误。在这种情况下,请使用以下命令更改您的codeigniter文件夹的权限:
$ sudo chmod 755 -R /var/www/html/Codeigniter_folder_name