【问题标题】:curl retry on timeoutcurl 超时重试
【发布时间】:2009-10-01 12:27:56
【问题描述】:

我写了一个 shell 脚本,它有这样的功能:

function getpage {
        echo $1
        curl -O "http://www.example.com/$1" -b cookie.txt -s
}

问题是,如果网站超时,则该页面将被跳过,如果超时,我需要它重试(我还将设置 60 秒超时)。

我该怎么做?

【问题讨论】:

    标签: curl timeout


    【解决方案1】:

    您可以使用--retry <num> 进行强制重试。另一种方法是添加 -w http_code 以查看返回码是什么...如果不是 200 则再试一次。

    【讨论】:

    • 现在为什么我会想到这个,超时值为 10 秒,重试 50 次(我非常怀疑它是否需要超过 3 次)
    • 当错误是主机不可达或连接被拒绝时,有没有办法重试?
    • 你可以使用: --writeout {http_code} 并解析结果。如果无法连接,Curl 将返回 0,否则返回状态码。
    • @jrwren 你可以加--retry-connrefused
    猜你喜欢
    • 1970-01-01
    • 2020-10-03
    • 2011-05-12
    • 1970-01-01
    • 2012-12-10
    • 2016-03-13
    • 1970-01-01
    • 2017-11-01
    • 2012-11-27
    相关资源
    最近更新 更多