【问题标题】:Getting a Bad Request when im Posting Data with requests即时发布带有请求的数据时收到错误请求
【发布时间】:2015-09-16 20:41:28
【问题描述】:

当我尝试将数据发布到 Steam 时,我总是收到错误消息“错误请求”,我做了很多研究,但我不知道如何解决这个问题。

发布价值观:

# Post Values    
total = int(item['price'])
fee = int(item['fee'])
subtotal = total-fee

Cookie:

# Cookies
c = []
c.append('steamMachineAuthXXXXXXXXXXXXXXXXX='+steamMachineAuth)
c.append('steamLogin='+steamLogin)
c.append('steamLoginSecure='+steamLoginSecure)
c.append('sessionid='+sessionid)
cookie = ''
for value in c:
    cookie = cookie+''+value+'; '

标题:

# Headers
headers = {
    "Accept": "*/*",
    "Accept-Encoding": "gzip, deflate",
    "Accept-Language": "de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4",
    "Connection": "keep-alive",
    "Host": "steamcommunity.com",
    "Referer": hosturl+"market/listings/"+appid+"/"+item['market_hash_name'],
    "Cookie": cookie,
    "Origin": hosturl,
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.85 Safari/537.36",
    "X-Requested-With": "XMLHttpRequest"
}

发布数据:

# Post Data
post = {
    'sessionid': sessionid,
    'currency': int(currency),
    'subtotal': subtotal,
    'fee': fee,
    'total': total,
    'quantity': 1
}

网址:

# url
url = hosturl+'market/buylisting/'+item['listingid']

发送请求:

# Sending Request
se = requests.Session()
re = se.post(url, data=post, headers=headers)
print re.reason

输出: 错误的请求

【问题讨论】:

    标签: python post python-requests steam bad-request


    【解决方案1】:

    由于我还没有使用过 Steam 服务,所以我无法具体谈论它,但我对典型的 Bad Request 响应的经验是,您要么尝试使用“ t 支持或您的请求格式不正确。

    在你的情况下,我怀疑是后者。

    我要查看的第一个候选人是您的 cookie 格式。您确定没有需要转义的字符吗?

    我可以建议改用这样的东西:

    c = { 
        'steamMachineAuthXXXXXXXXXXXXXXXXX': steamMachineAuth,
        'steamLogin': steamLogin,
        'steamLoginSecure': steamLoginSecure,
        'sessionid': sessionid
    }
    cookie = '; ',join('{}="{}"'.format(k, v) for k, v in c.items())
    

    【讨论】:

    • 我尝试了许多可能的方式来发送 cookie、标头和发布数据,所以我认为存在不同的问题。可能有些数据丢失了。
    猜你喜欢
    • 2017-09-12
    • 2011-03-04
    • 1970-01-01
    • 2021-01-14
    • 1970-01-01
    • 2022-09-23
    • 2021-09-23
    • 1970-01-01
    • 2014-12-28
    相关资源
    最近更新 更多