【发布时间】:2014-08-19 15:19:11
【问题描述】:
我想使用 API 进行简单调用。我尝试实现可能已被弃用的 ActiveResource(参见此处:Consuming REST API from Rails Application)。
我已经拥有 API 的访问令牌,当我从控制台逐步完成该过程时(请参阅快速入门指南:https://github.com/teamsnap/apiv2-docs/wiki/1.-Authentication),我可以开始工作(例如添加新团队)。但是,我似乎无法弄清楚如何在 Rails 中实现它。我想从简单的事情开始,比如在页面上显示我的团队名称 - 就是这样!
这里是 API 信息:https://github.com/teamsnap/apiv2-docs/wiki/Getting-Started-Guide。
我想既然我已经有一个令牌(我通过命令行教程获得),我不需要每次都包含我的用户名和密码。这可能不正确。
如果有人可以详细说明如何设置,我将不胜感激!我对rails相当陌生,所以请随时提供尽可能多的信息。谢谢!
编辑: 感谢 Uri,它正在工作。为了创建 API 的简单测试,我创建了一个空白的 show.html.erb 页面。在 teams_controller.rb 中,我将 Uri 的代码添加到“show”方法中,并添加路由,如下所述:
teams_controller.rb
def show
RestClient.post("https://api.teamsnap.com/v2/teams", '{"team": {"team_name": "Braves", "sport_id": 1,
"timezone": "Mountain Time (US & Canada)", "country": "United States", "zipcode": 80302}}',content_type: :json,
x_teamsnap_token: 'your_token_goes_here_in_quotes')
end
routes.rb
get 'teams/show'
post 'teams/show'
要测试 api,请将浏览器导航到 localhost:3000/teams/show 。这将为您手动“触发” show 方法。返回 Teamsnap (http://go.teamsnap.com/team/dashboard) 上的 Teams 仪表板。您现在应该有一个名为“Braves”的新团队(请参阅上面代码中的 Braves 名称)!现在我知道它正在工作,我可以继续使用其他功能,例如在我的应用程序中创建团队并将该信息发送到 TeamSnap,而不是像上面所述的那样对其进行硬编码。
【问题讨论】:
标签: ruby-on-rails ruby api rest