云 API
文档中心>云 API>代理使用问题

代理使用问题

最近更新时间:2024-11-12 10:19:22

我的收藏

代理使用问题及排查方法

代理问题通常是由于客户端代理配置错误导致的。以下是一些常见的代理问题及其排查方法:

1. API 调用正常,但 curl 调用的域名不通

这种情况可能是代理服务器做了某种限制。请先排查代理服务器的配置。

2. 遇到 java.net.UnknownHostException 错误

如果遇到如下错误:
Caused by: java.net.UnknownHostException: xxxx.tencentcloudapi.com
必现:如果必现该错误,是用户所配置的 DNS 有误。
偶现:如果偶现该错误,是在某一时间段 DNS 服务器出现了问题。

3. 代理配置域名解析问题

如果代理配置了公网域名,解析时会直接走公网解析。例如:
tke.tencentcloudapi.com

4. 遇到 Unexpected response code for CONNECT: 400 错误

[TencentCloudSDKException]code: null message: requestId:null cause:java.io. IOException: Unexpected response code for CONNECT: 400
说明用户的代理配置有问题,请先调试正向代理相关配置。

5. 遇到 Content-Length 错误

[TencentCloudSDKException] code:Content-Length null message:Cannot transfer response body to string, because Content-Length is too large,or Content-Length and stream length disagree.requestId:null cause: javax.net.ssl.SSLException:Socket closed
直接原因是 socket 断开了连接。若是偶现且使用了代理,请用户先通过代理服务器检查原因。

6. 代理功能支持

若使用了代理功能,则需注意 SDK 只支持正向代理,不支持反向代理(例如 nginx 做反向代理服务器)。若使用反向代理,则会出现超时或报错等异常情况。

调试代理的基础步骤

在客户端输入以下指令,若能返回成功,则说明代理正常。
curl -v -x 代理ip:代理port https://cvm.tencentcloudapi.com