【发布时间】:2011-11-15 21:38:39
【问题描述】:
我有一个 Rails 3.1 应用程序,我想为其创建 API。我希望我的网址看起来像:
www.example.com/controller/action // Normal Web requests
api.example.com/controller/action.json // API requests
第一个用于正常请求,另一个显然用于我的 API 内容。我希望这两个映射到同一个控制器/动作。
当我在 api 子域上时,如何设置我的应用程序以便它只在 www 和 json、xml 等上响应 HTML?
【问题讨论】:
-
如果您打算构建一个供外部使用的 API,我建议您使用单独的控制器。 API 和 UI 的错误处理完全不同。处理异常对我们来说也是完全不同的。如果 API 方法触发了异常,我们将其格式化为 xml 并以正确的 HTTP 状态返回。
标签: ruby-on-rails ruby ruby-on-rails-3 routing