有时在处理 API 响应时,我最终会编写如下内容:
what_i_need = response["key"]["another key"]["another key 2"]
"another key"
这样做的问题是,如果缺少,它会抛出一个错误。我不喜欢那样。what_i_need
如果过程中出现问题,我会更高兴nil
。
有没有比以下更优雅的解决方案:
what_i_need = nil
begin
what_i_need = response["key"]["another key"]["another key 2"]
rescue Exception => e
end
我还考虑过猴子修补你尝试访问nil["something"]
它的 NilClass 会返回nil
,但我不确定这是否是最好的方法,如果可能的话。