CURL 在前几次尝试中给出错误“无法解析主机”,然后成功(CentOS7)

问题描述 投票:0回答:1

我遇到了一个奇怪的情况,现在想知道是否有人可以解释或猜测此行为的原因:当我 CURL 端点时,它在前几次尝试中响应“无法解析主机”(在某些情况下为 2-5 次) ,但最后它返回了预期的响应,而我没有真正改变任何东西。

bash-4.4$ curl http://example.com/welcome/
curl: (6) Could not resolve host: example.com
bash-4.4$ curl http://example.com/welcome/
curl: (6) Could not resolve host: example.com
bash-4.4$ curl http://example.com/welcome/
curl: (6) Could not resolve host: example.com
bash-4.4$ curl http://example.com/welcome/
curl: (6) Could not resolve host: example.com
bash-4.4$ curl http://example.com/welcome/
{"detail":"Authentication credentials were not provided."}
bash curl
1个回答
0
投票

这将等到 DNS 解析,然后使用 ipv4 地址(如果存在),否则使用 ipv6 地址进行卷曲:

while [ -z ${ip} ]; do ip=$(getent ahosts example.com | cut -f 1 -d " "  | sort -ur | head -n 1); sleep 1; done
if [[ ${ip} =~ .*:.* ]]; then ip=[${ip}]; fi
curl http://${ip}/welcome/
© www.soinside.com 2019 - 2024. All rights reserved.