繁体   English   中英

如何在rails中解析json响应

[英]How to parse a json response in rails

第一次在Rails中使用JSON并试图弄清楚它应该是非常基本的东西。 我正在使用Stripe Rails库并尝试解析并将其中一个JSON元素设置为变量。

这是我的实际尝试:

    coupon = Stripe::Coupon.retrieve(self.discount_code)
    parsed_json = ActiveSupport::JSON.decode(coupon)
    discount_amount = parsed_json["percent_off"]

这条线有效:

coupon = Stripe::Coupon.retrieve("save50percent")

在控制台中运行“puts coupon”会显示JSON字符串

JSON:{“id”:“test50”,“duration”:“once”,“duration_in_months”:null,“livemode”:false,“max_redemptions”:null,“object”:“coupon”,“percent_off”:50 “redeem_by”:空, “times_redeemed”:0}

但试图运行:

parsed_json = ActiveSupport::JSON.decode(coupon)

导致以下错误:

TypeError: can't convert Stripe::Coupon into String

我甚至没有试图解析JSON中的值 - 我确信我接近了错误。

谢谢

您的错误消息说明了一切: couponStripe::Coupon ,而不是String 尝试使用可用的to_json方法

我会假设优惠券不是一个看起来像JSON的字符串,但在打印它时看起来像一个。 尝试解码它的字符串表示。 我不确定这个代码(我不是一个RoR程序员)但是我看到了很多类似于你所在的情况......

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM