次の定義を持つルビークラスがあります。
class MyResponse
attr_writer :status, :message
def initialize(status,message)
@status = status
@message = message
end
end
MyResponse 型のオブジェクトで to_json を実行しようとすると、json に変換された文字列が正しく取得されます。
問題は、MyResponse に渡された同じパラメーターのセットで、空の文字列が時々取得されることです。
元:
response = MyRespons.new("Abcd", 0)
puts response.to_json は以下を与えます:
"{\"status\": \"Abcd\", \"message\": 0}"
同じことが時々与えられます:
"\"#<MyResponse:0xb687d884>\""
私の質問は、json エラーをキャッチするにはどうすればよいですか? 2 番目のケースでは、MyResponse クラスに渡されるパラメーターにまったく違いがないためです。
挙動はランダムです。
更新: 同様の質問が見つかりました。しかし、答えは宝石を更新することです。現在の宝石を更新できません。 Rails: to_json メソッドが期待どおりに機能しない