首页 > 解决方案 > HttpClient 可以引发哪些异常?

问题描述

Net::Http在 ruby​​ 'net/http' 标准库中,使用方法时类会引发哪些异常new

查看此处的文档,尚不清楚该方法可以引发哪些异常。即使切换“显示源”,并将new方法追溯到start方法并查看其源,我也看不到可能引发异常的明确指示。

标签: ruby

解决方案


Net::Http异常的基类是我们可以像这个问题Net::HTTPExceptions 中描述的那样查找它的后代。

require 'net/http'

puts ObjectSpace.each_object(Class).select { |x| x < Net::HTTPExceptions }

它输出 4 个类名:

Net::HTTPFatalError
Net::HTTPServerException
Net::HTTPRetriableError
Net::HTTPError

还有一些用于兼容性的类名,例如

# for compatibility
Net::HTTPClientException = Net::HTTPServerException

源文件可以在本地文件中的 ruby​​ 存储库中查看(将 Ruby 版本更改为您的)

C:\Ruby26-x64\lib\ruby\2.6.0\net\http\exceptions.rb

推荐阅读