如何使用响应参数和条件

时间:2017-03-06 09:39:36

标签: ruby-on-rails json api if-statement unirest

我正在尝试使用这个条件,所以如果响应不包含sectionid,它将返回第一个响应,如果它确实包含sectionid,它将返回第二个响应。问题是,sectionid是否在响应中,我不确定如何在发出请求之前使用响应来定义条件,就像我现在这样做的方式,无论情况如何,都会返回第一个响应。请求。任何帮助将非常感谢。

 def show
  if "sectionId" != true 
    @events = Unirest.get("https://api.stubhub.com/search/inventory/v2?eventid=#{params[:id]}&limit=1000&start=0&rows=1000&sectionStats=true", headers:{"Accept" => "application/json", "Authorization" => "Bearer*****"}).body
 else
   @events = Unirest.get("https://api.stubhub.com/search/inventory/v2/sectionsummary?eventid=#{params[:id]}", headers:{"Accept" => "application/json", "Authorization" => "Bearer ******"}).body
end

1 个答案:

答案 0 :(得分:1)

您的条件将始终为真,因为您正在检查字符串值"sectionId"是否与布尔值true不同。它总是不同的。

不应该是params[:sectionId]而不是"sectionId"吗?查看日志并检查哪些参数进入show。或者,在show的第一行添加puts params.inspect,直接在控制台上输出它们。