一、背景
利用微信公众号发送消息,平常是好的,但是某一天突然不行了
二、错误
me.chanjar.weixin.common.error.WxErrorException: 错误: Code=0, Msg=api.weixin.qq.com ?? ?at me.chanjar.weixin.mp.api.impl.BaseWxMpServiceImpl.executeInternal(BaseWxMpServiceImpl.java:330) ?? ?at me.chanjar.weixin.mp.api.impl.BaseWxMpServiceImpl.execute(BaseWxMpServiceImpl.java:264) ?? ?at me.chanjar.weixin.mp.api.impl.BaseWxMpServiceImpl.post(BaseWxMpServiceImpl.java:253) ?? ?at me.chanjar.weixin.mp.api.impl.WxMpQrcodeServiceImpl.qrCodeCreateTmpTicket(WxMpQrcodeServiceImpl.java:85) ?? ?at?
...
api.weixin.qq.com: 未知的名称或服务
三、解决方式
1.首先在能够请求外网的服务器或者本地电脑上ping?api.weixin.qq.com
2.拿到对应的ip,
3.确认白名单的设置是否有对应的ip白名单,设置并用ping ip 确认连通情况
4.如果设置白名单后,ping?api.weixin.qq.com还是不行,确认下当前服务器能否ping成功其他已在白名单上的Ip后,并且同时对应域名能够Ping 通,比如ping www.baidu.com
5.如果不能ping 通其他应该能够ping通的域名,则进行vi /etc/resolv.conf ,在这个文件中 在nameserver最前面一行加
nameserver 8.8.8.8
保存后重启网络服务,利用命令:service network restart
6.如果能够ping 通其他域名,则可能当前服务器没有对应的域名。利用vi /etc/resolv.conf 进入服务器配置域名ip文件,然后添加(不同地区ip可能不一样,可以从官网获取微信服务器IP地址 | 微信开放文档找到所有ip进行编辑添加)
117.144.228.18?api.weixin.qq.com
7.重新尝试
|