我试图从WatchPeopleCode API和我使用HTTParty gem提取数据来执行此操作。我为这样的实时流提取数据:
live = HTTParty.get("http://www.watchpeoplecode.com/api/v1/streams/live")
@live_streams = live["data"]
然后我在我的视图中访问和显示有关各个直播视频的信息,如下所示:
<% @live_streams.each do |stream| %>
<p><%= stream["id"] %></p>
<p><%= stream["actual_start_time"] %></p>
<p><%= stream["title"] %></p>
<p><%= stream["user"] %></p>
<% end %>
除了用户之外,几乎所有信息都正确显示。当我在控制台中测试我的代码时,我发现用户是nil
。关于导致这种情况的原因以及如何解决问题的任何想法?我真的希望能够链接到用户/流媒体配置文件。
另外,我是否正确地完成了这项任务?我之前与API合作的唯一一次是使用Facebook / Twitter等进行用户身份验证。我可以以不同的方式从watchpeoplecode中提取数据,还是httparty是最佳选择?
答案 0 :(得分:1)
当我加载API endpoint时,第一个数据条目没有用户。而其他两个条目都有用户名。
那说:没有什么可以做,因为没有从服务器返回的数据。
要解决此问题,您可以检查是否有用户并在没有用户的情况下处理该情况。所以不要这样:
<p><%= stream["user"] %></p>
你可能想写这样的东西:
<p>
<% if stream["user"].present? %>
<%= stream["user"] %>
<% else %>
unknown user
<% end %>
</p>
答案 1 :(得分:0)
我手动(在浏览器窗口中)尝试了API,并且第一个条目确实为用户提供了null。剩下的条目都没问题。
在www.watchpeoplecode.com
的实时视图中,第一个条目为finished
。
这可能是一个原因。