【异常解决】UnknownHostException: api.weixin.qq.com 的解决方案

简介: 【异常解决】UnknownHostException: api.weixin.qq.com 的解决方案

一、问题描述

在使用微信服务过程中(调用api.weixin.qq.com),经常会碰到如下这种问题:“java.net.UnknownHostException: api.weixin.qq.com: 未知的名称或服务”。如下图所示:

关键是这种问题不是必现,在Windows电脑上可能正常调用,但是部署到服务器(Linux系统)上却出现了,问题很难排查。查了好多方案都没有解决。最后通过不断分析实验,得出本文解决方法。

二、解决方案

Linux系统下的解决方案如下:

步骤1:找到resolv.conf配置文件

一般情况下此文件都会在 /etc/ 目录下

配置上如下内容:

>   options timeout:1 attempts:1 rotate
>   #options single-request-reopen
  nameserver 119.29.29.29
  nameserver 114.114.114.114
  nameserver 180.76.76.76
  nameserver 223.5.5.5

Tips:nameserver:dns服务器,分别采用了腾讯的、114的、百度的、阿里的dns服务器,总有一个是可行的。

步骤2:chattr + i /etc/resolv.conf

在有些Linux下,当网络重启后,/etc/resolv.conf会恢复到原来的状态。本命令是让文件编程只读。如果今后需要修改,用chattr -i /etc/resolv.conf

步骤3:vi /etc/sysconfig/network-scripts/ifcfg-eth0

删掉DNS1,DNS2参数,都用resolv.conf中的配置

步骤4:重新启动网络:service network restart

如果报错或者不生效,请找问题并重启网络

步骤5:可以用nslookup查看哪个DNS生效

三、参数说明

options 后面跟的是各种参数,每个参数意义如下:

timeout:设置等待dns服务器返回的超时时间,单位秒。默认值5。

attempts:向DNS服务器发起域名解析的请求次数。默认值2。采用多个dns服务器轮询

rotate:采用轮询方式访问nameserver

single-request-reopen:CentOS6/CentOS7总是需要等待AAAA(IPv6)的结果,即使关闭IPv6也没什么卵用。

CentOS 6/CentOS 7中的DNS解析器对于ipv4和ipv6都使用同一个socket接口,在同时发出ipv4和ipv6解析请求后,只会收到一个ipv4的解析响应,此时socket将一处于“等待”模式,等待ipv6的解析响应,故导致解析缓慢;添加single-request-reopen后就可以重新打开一个新的socket接收ipv6的解析响应,而不影响ipv4的解析响应。

四、补充说明

经验证关于 options single-request-reopen 配置在某些环境可以,但在某些环境下打开会导致错误如下:

java.net.UnknownHostException: www.xxxxx.com: 未知的名称或服务
  at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)

该种情况下,关闭该选项即可。

本文完结!


相关文章
|
3月前
|
域名解析 JSON API
【干货满满】如何处理requests库调用API接口时的异常情况
在调用 API 时,网络波动、服务器错误、参数异常等情况难以避免。本文提供一套系统化的异常处理方案,涵盖 requests 库常见异常类型、处理策略、实战代码与最佳实践,通过分类处理、重试机制与兜底策略,提升接口调用的稳定性与可靠性。
|
10天前
|
缓存 数据可视化 定位技术
快递鸟快递API技术指南:获取物流轨迹信息与轨迹地图的解决方案
在当今电商竞争激烈的环境中,物流体验已成为提升用户满意度的关键因素。研究表明,超过 75% 的消费者会因物流信息不透明而放弃下单。
266 1
|
24天前
|
缓存 人工智能 API
API接口调用中的网络异常及解决方案
淘宝API是淘宝开放平台提供的接口集合,支持商品、交易、用户、营销等数据交互。开发者需注册获取App Key,通过签名认证调用API,结合沙箱测试、OAuth授权与安全策略,实现订单管理、数据监控等应用,提升电商自动化与数据分析能力。
|
3月前
|
人工智能 JSON 前端开发
Mock 在 API 研发中的痛点、价值与进化及Apipost解决方案最佳实践
在 API 开发中,Mock 技术能有效解决后端接口未就绪带来的开发阻碍,保障前端独立高效开发。本文通过电商平台支付接口的实例,分析了常见 Mock 方案的局限性,并深入介绍了 Apipost 提供的灵活 Mock 能力:从固定值返回,到使用内置函数生成动态数据,再到自定义函数处理复杂逻辑,最后实现根据请求参数返回不同响应。这些能力不仅提升了开发效率,也增强了测试的全面性,为前后端协作提供了更高效的解决方案。
143 3
|
2月前
|
JSON 运维 监控
拼多多:通过物流预警API提前识别异常订单,主动联系用户
拼多多集成物流预警API,实时监控订单状态,通过规则引擎识别延迟、丢失等异常,自动触发用户通知,提升满意度、降低售后压力。技术结合API调用、异常检测与自动化响应,实现主动式物流管理,助力构建高效、可信的电商体验。(238字)
145 0
|
2月前
|
人工智能 安全 API
F5发布后量子API安全解决方案,以AI驱动全面防护应对量子计算威胁
F5发布后量子API安全解决方案,以AI驱动全面防护应对量子计算威胁
78 0
|
11天前
|
缓存 监控 前端开发
顺企网 API 开发实战:搜索 / 详情接口从 0 到 1 落地(附 Elasticsearch 优化 + 错误速查)
企业API开发常陷参数、缓存、错误处理三大坑?本指南拆解顺企网双接口全流程,涵盖搜索优化、签名验证、限流应对,附可复用代码与错误速查表,助你2小时高效搞定开发,提升响应速度与稳定性。
|
15天前
|
JSON 算法 API
Python采集淘宝商品评论API接口及JSON数据返回全程指南
Python采集淘宝商品评论API接口及JSON数据返回全程指南
下一篇
开通oss服务