调用阿里云接口出现java.net.UnknownHostException: dm-51.data.aliyun.com: unknown error

本文介绍了一种在使用阿里云身份证和行驶证自动识别接口时遇到的DNS问题及其解决方案。通过对日志的分析,发现错误根源在于DNS解析失败,并通过修改服务器上的DNS配置文件解决了该问题。

调用阿里云的身份证和行驶证自动识别接口,本地测试通过后,在测试环境出现异常。

1、排除了tomcat用户写入文件目录的权限问题;

2、排除了数据库sql更新问题,本地连接测试环境也是正常;

3、增加了应用日志输出;错误日志提示:java.net.UnknownHostException: dm-51.data.aliyun.com: unknown error

初步判断是dns问题,在服务器上ping www.baidu.com,也是不行。

编辑 /etc/resolv.conf文件,输入

nameserver 192.168.1.1

nameserver 8.8.8.8

即可。


Java中出现`java.net.UnknownHostException: joys-cloud-eureka`错误,通常表示Java程序无法将主机名`joys-cloud-eureka`解析为对应的IP地址。以下是一些可能的解决方法: ### 检查网络连接 确保网络连接正常,程序可以访问外部网络。可以通过`ping`命令测试网络连通性。 ### 检查主机名拼写 确认`joys-cloud-eureka`的拼写是否正确,任何拼写错误都会导致无法解析主机名。 ### 检查DNS配置 - **本地DNS配置**:检查本地的DNS服务器设置是否正确,可以尝试使用公共DNS服务器,如Google的`8.8.8.8`和`8.8.4.4`,或阿里云的`223.5.5.5`和`223.6.6.6`。 - **DNS解析问题**:如果是在本地开发环境,可以尝试在`hosts`文件中添加主机名和对应的IP地址映射。在Windows系统中,`hosts`文件位于`C:\Windows\System32\drivers\etc`;在Linux和macOS系统中,位于`/etc/hosts`。例如: ```plaintext 127.0.0.1 joys-cloud-eureka ``` ### 检查服务注册与发现配置 如果`joys-cloud-eureka`是一个服务注册中心(如Eureka),需要确保服务已经正确注册到注册中心,并且客户端可以正确访问注册中心。根据引用内容,在使用Spring Cloud时,可能需要在注入的`RestTemplate`上加`@LoadBalanced`注解来解决相关问题。示例代码如下: ```java import org.springframework.cloud.client.loadbalancer.LoadBalanced; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.client.RestTemplate; @Configuration public class AppConfig { @LoadBalanced @Bean public RestTemplate restTemplate() { return new RestTemplate(); } } ``` ### 检查防火墙和代理设置 - **防火墙**:确保防火墙没有阻止对`joys-cloud-eureka`的访问,可以临时关闭防火墙进行测试。 - **代理设置**:如果使用了代理,需要确保代理配置正确,或者尝试不使用代理进行访问。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值