curl 设置超时 --connect-timeout

如果是在一个纯IPV6的VPS上,用 curl -4 方法去查本机IP地址的时候。有可能会遇到等很久的情况。所以要加上一个超时的设定。找到这个参数是

--connect-timeout

示例:

curl -4s --connect-timeout 3 https://www.cloudflare.com/cdn-cgi/trace | grep ip= | sed -e "s/ip=//g"

 


https://poe.com/s/skXHAkmZ2hPx8c7NgU9f


--connect-timeout 和 -m 参数


--connect-timeout 和 -m 参数都是 curl 中用于控制请求时间的选项,但它们的作用略有不同:

--connect-timeout

    含义: 指定连接到服务器的最大等待时间(以秒为单位)。

    作用: 如果在指定的时间内未能建立连接,curl 将会终止请求。这是用于控制连接阶段的超时。

    示例: --connect-timeout 5 表示连接超时时间为 5 秒。


-m 或 --max-time

    含义: 设置整个请求的最大执行时间(以秒为单位)。

    作用: 包括连接时间、数据传输时间等。如果在指定的时间内请求未完成,curl 将会终止请求。

    示例: -m 10 表示整个请求的最大执行时间为 10 秒。


总结

    --connect-timeout 控制的是连接阶段的超时,而 -m 控制的是整个请求的总超时。

    通常,可以将这两个参数结合使用,以确保在连接和请求阶段都不会超时。


评论

The Hot3 in Last 30 Days

RackNerd VPS搭Hysteria2 HY2梯子 年付 $10.98 1G端口 3T流量 17G存储 1GB内存