mir*_*rvo 5 javascript php api android
在设计一个易于被不同客户(Web和移动设备)使用的API时,我应该为每个客户端创建一个端点吗?
例如,在尝试为Web和移动设备创建API时,我想到了以下内容:
换句话说,我可以创建一个单一的API端点,例如:
http://site.ne/api/register - 适用于网站和移动设备
或者,我应该为网站创建一个单独的处理程序,比如说.
http://site.ne/register.php - 网站
http://site.ne/api/register - mobile
我相信Facebook,Twitter等正在做前者.如果这是正确的做法,我只想清除我的疑虑并强化我的理解.
请带我一些简单的例子.如果有人在之前使用相同的方法进行了缓冲并获得了胜利者,请分享您的解决方案.
无论客户端如何,您的 API 都应该以相同的方式运行。这就是 RESTful API 流行的部分原因。您正在为所有客户构建一项服务。以这种方式构建 API 使其更具可维护性和可扩展性(假设它是无状态的)。这体现了网络的本质。
考虑到这一点,您的客户希望与您的服务进行交互。它想要检索数据并将数据发回(然后使用 HTTP 动词来表示意图)。如何表示这些数据是客户端的责任,并且独立于服务。
Web 客户端可以进行 Ajax 调用来检索数据并以 HTML 形式呈现。HTML 可以响应以支持多个设备/屏幕。胖客户端还可以进行网络调用并根据需要进行显示。每次您需要另一个客户端时,就构建它。服务保持不变。客户端也可能是其他服务 - 这有帮助吗?
如果您认为 URL 代表资源,那么将“api”添加到您的 URL 就是一种反模式。如果您有兴趣阅读有关 REST 的更多信息,那么我建议您阅读 Jim Webber 的《Rest in Practice》。无论您选择构建 API,我仍然会推荐一种不知道其所服务的客户端的接口。
| 归档时间: |
|
| 查看次数: |
226 次 |
| 最近记录: |