Ruby on Rails - 检查控制器中的HTTP错误

时间:2011-06-04 04:07:49

标签: ruby-on-rails

就在今天,我发现我的fbgraph实现已经开始返回400 Bad Request错误,导致内部服务器错误。

控制器看起来像:

def fb
    fbclient = FBGraph::Client.new(:client_id => 'ID', :secret_id => 'SECRET')
    @fbname = fbclient.selection.user('129220333799040').feed.info!['data'][0].from.name
    @fbmessage = fbclient.selection.user('129220333799040').feed.info!['data'][0].message
end

如何在我的视图中调用@fbname之前检查我已收到200状态?

感谢。

更新:根据Devin M的建议,我已将上述行动改为

def fb
        fbclient = FBGraph::Client.new(:client_id => 'ID', :secret_id => 'SECRET')
        begin
            @fbname = fbclient.selection.user('129220333799040').feed.info!['data'][0].from.name
            @fbmessage = fbclient.selection.user('129220333799040').feed.info!['data'][0].message
        rescue
            @fbname = "Facebook Account"
            @fbmessage = "Facebook's API is a nightmare"
        end
    end

1 个答案:

答案 0 :(得分:1)

我认为你应该为此写一些测试,很难与Facebook的噩梦一起使用API​​。 虽然如果您想捕获此错误,请尝试使用该方法捕获特定错误并在救援部分对其执行某些操作。

begin
rescue
end

如果您希望我查看文档,看看您应该抓住什么让我知道。