【问题标题】:Ruby Open-URI library aborted in 404 HTTP error codeRuby Open-URI 库在 404 HTTP 错误代码中中止
【发布时间】:2012-10-29 15:41:03
【问题描述】:

我使用 OpenURI 库。

object = open("http://example.com")

如果http://example.com 服务器代码响应等于 200,则我的程序按预期运行。 但是,如果http://example.com 服务器响应代码等于 400(或其他),则脚本将中止 OpenURI::HTTPError: 404 Not Found。
如果我使用“begin-rescue”构造并处理“HTTPError 异常”,我可以避免这种情况。
这是正确的方法吗? 我应该使用 Net/Http 库而不是 OpenURI 来处理所有情况吗?

【问题讨论】:

    标签: ruby open-uri net-http


    【解决方案1】:

    拯救OpenURI::HTTPError 是完全合理的。请参阅此相关答案:https://stackoverflow.com/a/7495389/289274

    但是,如果您不想处理异常处理,可以使用Net::HTTP 进行以下操作: https://stackoverflow.com/a/2797443/289274

    【讨论】:

    • 可悲的是,看起来OpenURI::HTTPError 也不包含任何可能从请求中返回的内容(例如来自服务器的解释,除了状态码)。
    猜你喜欢
    • 1970-01-01
    • 2015-02-09
    • 2011-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-14
    相关资源
    最近更新 更多