Bitstamp API V2限价单POST参数报错:缺失amount和price?
问题核心原因
你将amount、price两个下单参数错误放在了请求头中,Bitstamp V2买/卖单接口要求这两个参数必须放在POST请求体中传递,接口不会从请求头字段中读取这两个参数,因此返回参数缺失的报错。
修复方案
- 调整参数位置:将
amount和price从请求头配置中删除,单独作为POST请求体参数传递,保持参数为字符串类型,符合接口规范。 - 校验请求头
Content-Type配置:如果使用表单格式传参,设置为application/x-www-form-urlencoded;如果使用JSON格式传参,设置为application/json,Bitstamp下单接口优先兼容表单格式,推荐优先使用该格式减少签名计算误差。
代码示例(Python)
import requests # 仅保留鉴权、格式相关字段到请求头 headers = { "X-Auth": f"BITSTAMP {api_key}", "X-Auth-Signature": gen_signature(timestamp, nonce, url_tail), "X-Auth-Nonce": nonce, "X-Auth-Timestamp": timestamp, "X-Auth-Version": "v2", "Content-Type": "application/x-www-form-urlencoded" } # 下单参数放到请求体中 post_data = { "amount": str(amount), "price": str(price) } response = requests.post("你的下单接口URL", headers=headers, data=post_data)
补充注意事项
生成鉴权签名时,需要将所有POST请求体参数按照ASCII码升序拼接后纳入签名计算,不要遗漏amount、price字段,否则会触发鉴权失败报错。
内容的提问来源于stack exchange,提问作者etotheipi
相关产品推荐
相关产品推荐

