mak*_*dad 3 api json ruby-on-rails ios
我有一个Rails应用程序,它有2个"客户端" - 一个iOS应用程序读/写JSON,以及读取HTML的Web浏览器.
现在,如果我说"我想为不同的浏览器/客户端提供不同的输出",我们可以使用不同的ERB文件并基于User-Agent或类似地进行渲染.
通过这种方式,Rails在Web世界中被想象 - 我键入"cap deploy",并且我的所有"实例"都升级到最新版本(保存活动会话AJAX调用).
然而,作为iOS开发人员,我非常习惯于if在代码中阻止处理不同的数据版本和客户端应用程序版本.这很痛苦(但需要).
我希望能够说"我会神奇地想到版本1.0中的完美数据结构",但我们可能都知道这不是真的 - 我会随着时间的推移添加和弃用属性甚至模型.
我不想将所有版本控制逻辑与我的普通HTML混合(可以优雅地升级,如上所述),所以我想到了:
我想解决一个解决的问题吗?在进行这个项目时,我应该知道任何资源或指导原则吗?
我建议你创建2个应用程序,一个用于webapp,另一个用于API.
您可以拥有一个外部库,其中包含这两个应用程序中使用的所有模型,测试和业务逻辑.
然后,如果需要,您可以将api锁定到库的某个版本.您可以创建API的多个版本,而不会影响旧版本.如果需要,您可以在库级别实现缓存,它将自动影响所有应用程序.
使用此模型,您还可以创建特定需求,例如,您可能需要更短的api网址而不是真正的webapp,因为您不关心API中的SEO.
你怎么看?
编辑:
这就是我的想法,图书馆在中间.

| 归档时间: |
|
| 查看次数: |
173 次 |
| 最近记录: |