如何使用响应参数和条件发出两个 api 请求

how to make two api requests using a response param and conditional

我正在尝试使用此条件,因此如果响应不包含 sectionid,它将 return 第一个响应,如果它包含 sectionid,它将 return 第二个响应。问题是,sectionid 在响应中,我不确定在发出请求之前如何用响应定义条件,我目前这样做的方式第一个响应是 returned no视乎请求的情况。非常感谢任何帮助。

 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

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

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