我想檢查響應是否有效的JSON。我正在向某些URL發送HTTParty或Restclient請求,並檢查返回的響應是否爲有效的JSON?valid_json?檢查紅寶石不工作
我參考了鏈接here。這不起作用。
我的代碼:
require 'json'
def get_parsed_response(response)
if not response.is_a? String or not response.valid_json?
# code
end
end
錯誤:
/home/user/.rvm/gems/ruby-2.1.0/gems/httparty-0.13.1/lib/httparty/response.rb:66:in `method_missing': undefined method `valid_json?' for #<HTTParty::Response:0x00000002497918> (NoMethodError)
該鏈接顯示了一個函數的定義,如果將其放入代碼中,則該函數將稱爲「valid_json?(響應)」。另外,因爲在確定它是有效的之後你總會試圖解析JSON,所以你只會做同樣的事情兩次。只需解析你的JSON並從錯誤中拯救出來,忘掉'valid_json?'。 – Amadan
謝謝 - @Amadan – Sam
爲什麼不利用'除非''而不是舊''如果不''的力量呢? –