簡體   English   中英

試圖解決Rails 5中的HTTParty連接錯誤

[英]Trying to rescue HTTParty connection error in Rails 5

我正在使用Rails 5和HTTParty。

問題是,如果API由於某種原因而關閉,我的應用程序將崩潰。 我想處理這種情況,並找到了幾種解決方案,但沒有使它們起作用。

我所做的是:

begin
   api = HTTParty.get(URL)
rescue HTTParty::Error
   puts('API not available')
end

我希望的是,如果API關閉或使用無效的URL,則不會給我內部服務器錯誤,而是告訴我API不可用,然后繼續執行代碼。

但是相反,它給出了內部服務器錯誤:

SocketError (Failed to open TCP connection to URL (getaddrinfo: nodename nor servname provided, or not known)):

我如何確保不會發生這種情況?

看起來您只是在挽救與您真正遇到的錯誤不同的錯誤。

begin
   api = HTTParty.get(URL)
rescue HTTParty::Error, SocketError => e
   puts('API not available')
end

請記住,在此救援之后執行的所有代碼都應考慮到您的響應可以為空

我也遇到了同樣的問題,但是從HTTParty :: Error營救無濟於事。 我的實際錯誤始終是Errno::ECONNREFUSED ,因此以下是為我解決的問題:

begin
  api = HTTParty.get(URL)
rescue Errno::ECONNREFUSED
  puts('API not available')
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM