0

我在 Sinatra 应用程序中使用 gem youtube_it。我想用它来检查 youtube 视频 ID 是否有效。

client.video_by(youtube_id)

是查询。当 id 无效时,我会收到此响应。

OpenURI::HTTPError: 400
    from /Library/Ruby/Gems/1.8/gems/youtube_it-2.1.4/lib/youtube_it/parser.rb:8:in `initialize'
    from /Library/Ruby/Gems/1.8/gems/youtube_it-2.1.4/lib/youtube_it/client.rb:95:in `new'
    from /Library/Ruby/Gems/1.8/gems/youtube_it-2.1.4/lib/youtube_it/client.rb:95:in `video_by'
    from (irb):22

我不确定如何处理这个问题,所以我可以告诉我的用户他们提供的 id 无效。

谢谢!

PS我真的会回答问题,我最近一直在问一些非常棘手的问题,但没有得到回应。不过,这对你们来说应该不会太难。:)

4

1 回答 1

2

不确定你是否发现了这样的错误,但你可以试一试。

begin  
  .... 
  client.video_by(youtube_id)
  ... 
rescue OpenURI::HTTPError
  flash[:notice] = "Oh no! Something bad happened..."
  redirect_to(:action => 'search')
end  
于 2012-03-16T04:20:50.910 回答