首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >valid_json?入住红宝石不起作用

valid_json?入住红宝石不起作用
EN

Stack Overflow用户
提问于 2014-11-17 05:34:44
回答 2查看 2.1K关注 0票数 3

我试图检查响应是否有效的JSON。我正在向某些urls发出HTTParty或Restclient请求,并检查返回的响应是否有效?

我引用了链接这里。这不管用。

我的代码:

代码语言:javascript
运行
复制
 require 'json'

 def get_parsed_response(response)
   if not response.is_a? String or not response.valid_json?
     # code 
   end
 end

错误:

代码语言:javascript
运行
复制
/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)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-17 08:47:18

你应该打电话给response.body

response是一个HTTParty::Response对象。您真正想要使用的是表示HTTP主体的String对象。

票数 2
EN

Stack Overflow用户

发布于 2014-11-17 06:19:26

比我的评论更具体一些,我建议你用这样的词:

代码语言:javascript
运行
复制
value = nil
begin
  value = JSON.parse(response)
  # do whatever you do when not error
rescue JSON::ParserError, TypeError => e
  puts "Not a string, or not a valid JSON"
  # do whatever you do when error
end
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26966187

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档