启用Binance IP白名单后Python连接报错-2015求助
解决Binance API IP白名单启用后的-2015错误
首先先修正你代码里的语法错误:
from binance import Client apiKey = '你的API密钥' apiSecret = '你的API密钥密码' # 此处多了个多余的点,修正后如下 client = Client(apiKey, apiSecret) client.get_account()
接下来针对IP白名单启用后报错的问题,按以下步骤排查:
确认树莓派的公网IP准确且稳定
在树莓派终端执行curl ifconfig.me获取当前公网IP,和Binance后台API设置里的白名单IP完全对比。如果你的家用网络是动态IP,每次重启路由器IP都会变化,这时候要么联系运营商申请静态IP,要么使用动态DNS服务绑定域名,再把域名对应的IP段加入白名单。检查是否存在代理/VPN干扰
如果树莓派开启了代理、VPN或者使用了某些网络工具,实际发送请求到Binance的IP可能不是树莓派本身的公网IP,而是代理服务器的IP。这种情况下需要把代理服务器的公网IP加入Binance的白名单,或者关闭代理后再测试。验证请求的实际来源IP
运行以下脚本查看Binance接收到的请求IP:import requests response = requests.get('https://httpbin.org/ip') print(response.json())输出的IP必须和你添加到白名单的IP完全一致,否则就会触发-2015错误。
检查Binance白名单的格式
确保在Binance后台添加IP时没有多余的空格、换行符,单个IP直接填写x.x.x.x即可,不需要额外的CIDR后缀(除非你要添加整个网段)。如果添加的是网段,要确认CIDR格式正确,比如192.168.1.0/24。重新确认API密钥的权限
虽然关闭白名单时能正常使用,但还是要检查API密钥是否开启了“读取”权限(get_account需要读取权限)。在Binance后台编辑API密钥,确保“允许读取”选项是勾选状态,并且没有限制特定交易对或功能。
内容的提问来源于stack exchange,提问作者Nidesbois
相关产品推荐
相关产品推荐

