【问题标题】:how to handle the 404 response when youtube_it gem doesn't find a video当 youtube_it gem 找不到视频时如何处理 404 响应
【发布时间】:2012-03-16 02:13:39
【问题描述】:

我在 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 无效。

谢谢!

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

【问题讨论】:

    标签: ruby youtube gem http-status-code-404 open-uri


    【解决方案1】:

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

    begin  
      .... 
      client.video_by(youtube_id)
      ... 
    rescue OpenURI::HTTPError
      flash[:notice] = "Oh no! Something bad happened..."
      redirect_to(:action => 'search')
    end  
    

    【讨论】:

    • 谢谢,成功了。我还没有让 Flash 消息部分可操作,但我想这是一个新问题。 :)
    猜你喜欢
    • 1970-01-01
    • 2011-08-23
    • 2019-01-12
    • 1970-01-01
    • 1970-01-01
    • 2020-04-05
    • 1970-01-01
    • 2019-10-29
    • 2022-11-23
    相关资源
    最近更新 更多