Shopify:捕获来自ShopfyAPI的RestAPI调用的异常

时间:2018-12-03 11:42:35

标签: ruby-on-rails shopify

我正在尝试捕获异常,当找不到某个ID时,但该应用程序仍会停止并显示以下消息: ActiveResource :: ResourceNotFound

代码如下:

begin
  ShopifyAPI::ScriptTag.find(x.scriptid)
rescue => e
  if e.message == '404 Not Found'
  # handle 404 error
  else
    raise e
  end
end

我做错了吗?

1 个答案:

答案 0 :(得分:1)

一种更好的做法是抢救您想要的异常,而不是StandardError

rescue ActiveResource::ResourceNotFound => e
  # handle 404 error
end

我不能立即说出您的示例为何无效的原因,但我想消息不完全是404 Not Found

在这种情况下,您可以使用正则表达式e.message.match?(/404 Not Found/),但我更喜欢上面的方法