微信服务号开发时获取授权遇到的问题

本文介绍了解决微信服务号开发过程中遇到的IP白名单问题,详细说明了如何处理错误代码-40164(invalidip),并提供了具体的步骤来帮助开发者正确设置IP白名单。

1、问题
(遇到的问题)微信服务号开发时获取授权遇到的问题
公众平台返回原始数据为: 错误代码-40164,错误信息-invalid ip, not in whitelist hint: [59FKqA0797e514]

(问题的原因)“获取access_token”接口新增IP白名单保护
为了提高公众平台开发者接口调用的安全性,避免一旦开发者ID和密码泄露后给帐号造成损失。腾讯对调用“获取access_token”接口增加IP白名单校验:只有将IP地址设置为公众号的IP白名单,才能成功调用该接口。


如下图:

然后去微信官方查阅了资料,-40164 在错误码里面没有,在获取授权的时候有提到。说的是服务器ip没有加入白名单

这个ip就是他报错时 显示的ip(下图红线部分,根基自己的实际情况而定)

2、开启IP白名单的步骤如下:
                                                                                                                                 
1、登录公众平台,进入开发->基本配置页面

 2、点击配置进入IP白名单设置页
 


3、填写上面提到的ip


4、管理员扫码确认保存


5、设置成功后点击“关闭”
 
6、修改成功后,状态变为“查看”,可再次修改或添加多个IP地址!
 


调用“获取access_token”接口,返回结果。注意:如非白名单IP调用,将返回错误码:40164,可通过wiki查看具体原因。
以上IP白名单功能将默认对新启用开发者密码的帐号开启保护,旧用户可按照以上操作自主开启。

为进一步保护帐号安全,后续可能将逐步要求全平台公众号开发者添加IP白名单。




### 移除企业微信中的IP白名单 对于企业微信而言,移除IP白名单的操作并非直接提供图形界面选项来完成。通常情况下,设置或修改诸如IP白名单这样的安全措施是通过API接口实现的。为了从企业微信中移除特定的IP地址或是清空整个IP白名单列表,应当利用官方提供的管理工具或者调用相应的API服务。 具体来说,可以通过企业微信的Corp API来进行此操作。开发者可以根据文档指引构建HTTP请求以删除现有的IP白名单条目。需要注意的是,在执行这类变更前应该仔细阅读最新的API文档并确认当前应用具有足够的权限来做出这些更改[^3]。 ```python import requests import json def remove_ip_whitelist(corp_id, corp_secret): access_token_url = f"https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={corp_id}&corpsecret={corp_secret}" response = requests.get(access_token_url).json() if 'access_token' not in response: raise Exception("Failed to get access token") access_token = response['access_token'] update_whitelist_url = f"https://qyapi.weixin.qq.com/cgi-bin/service/set_ips?access_token={access_token}" data = { "ip_list": [] } headers = {'Content-Type': 'application/json'} result = requests.post(update_whitelist_url, data=json.dumps(data), headers=headers) return result.json() # Example usage (with placeholder values for corp_id and corp_secret) remove_ip_whitelist('your_corp_id', 'your_corp_secret') ``` 上述代码展示了如何使用Python脚本清除企业微信账户下的所有IP白名单记录。实际部署需替换`your_corp_id`和`your_corp_secret`为真实的公司ID与密钥。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值