【发布时间】:2014-12-15 18:26:07
【问题描述】:
我们有内部构建的 Web 应用程序(服务器端公开从客户端 JS 调用的 Web 服务)。 我们还需要在 REST API 中公开我们的代码功能。
我想知道 - 我是否也应该开始将 REST API 也用于我内部构建的 Web 应用程序?
最初,REST 架构风格声明 REST 是无状态的 (http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_3)。这导致消费者\客户端将状态保持在客户端。 它适用于为保存状态而构建的“富”客户端(移动应用程序等)。但是......对于Web应用程序是否相同? 让服务器端在 REST API 中暴露自己,而客户端直接调用这些 REST API 是不是很好?
我看到了一些优点和一些缺点。
优点:
- 统一接口 - 我们的服务器端仅以一种方式 (REST) 公开其 API,用于 Web 应用程序和通用 API
- 易于公开我们在内部使用的服务以供外部用户使用。
缺点:
- 如上所述 - 浏览器不是为了在客户端保存缓存而构建的。
- 如果我可以使用状态 - 为什么不呢?它提高了性能(更少的来回),并简化了开发。
- 一旦我们将内部 API 公开给客户,就会限制我们对更改非常小心。
有什么提示\推荐吗?
【问题讨论】:
标签: web-services api rest