如何处理API提升一般,但更具体地来自Twitter

时间:2015-03-17 22:45:19

标签: ruby-on-rails twitter

所以我对这件事情的确很新,这是API可以引发的错误,以及如何调整代码。

所以例如我正在使用Twitter的宝石,如果我想收到一条推文,那么删除推文,我的页面会转到500,我得到:

ActionView::Template::Error (No status found with that ID.)

我想知道的是如何编写可以处理这些错误的代码。所以说我给出了一个包含2个ID的数组,其中第一个不起作用而另一个不起作用。理想情况下,我希望跳过第一个。然而,根据目前的情况,它将一起停止。

我可以做一些阅读问题,但我不确定这是什么。

1 个答案:

答案 0 :(得分:1)

通常你会写一些东西来处理异常。一个例子是:

begin
  go_get_tweet 
rescue Twitter::BadRequest => e
  logger.error e.message
  # ...code to continue gracefully
rescue Twitter::TimeoutError => e
  do_something_that_retries
rescue => e
  logger.error "..."
end

在这个非常匆忙的例子中,它将与几个特定的​​例外相匹配,也适用于你没有指定为全能的任何例外。