【发布时间】:2009-06-04 12:18:32
【问题描述】:
在构建网站并计划使用 API 支持用户使用时,我应该考虑哪些要点?
我看到大多数著名网站都在为开发人员提供 API 来处理,例如 facebook、twitter、google ......
在构建新网站以便能够使用 API 支持开发人员时,我应该考虑哪些一般要点? “只是非常笼统的观点,不管网站服务本身”
更新以下所有答案对我帮助很大。
【问题讨论】:
标签: web-services api
在构建网站并计划使用 API 支持用户使用时,我应该考虑哪些要点?
我看到大多数著名网站都在为开发人员提供 API 来处理,例如 facebook、twitter、google ......
在构建新网站以便能够使用 API 支持开发人员时,我应该考虑哪些一般要点? “只是非常笼统的观点,不管网站服务本身”
更新以下所有答案对我帮助很大。
【问题讨论】:
标签: web-services api
肥皂或 XML
取决于您的应用程序。如果它很复杂,您可能需要肥皂的功能。 KISS 尤其适用于 API。有一个合理的 URL 布局,在资源方面有意义:
www.site.com/people/london
作为资源。
http://en.wikipedia.org/wiki/Restful
了解为什么使用 PUT、POST、GET 和其他方法很重要。
祝你好运
【讨论】:
我推荐 Joshua Bloch 的“如何设计一个好的 API 及其重要性”的补充 PDF 和 presentation。
【讨论】:
我想您首先要确定网站支持的功能(例如,addUser、addStory、addComment、editXYZ 等,具体取决于网站的类型)以及它提供的数据(getCommentsForStory、getStories、getUser , ...),并为这些功能创建一个 Web 服务 API,并进行适当的安全检查等。
如果您已经对网站进行了良好的编码,那么在您的网站功能之前放置一个 Web 服务层应该非常简单(它只是控制器和模型之上的另一个视图)。
【讨论】:
IMO 提供 API 的最令人信服的原因是您的网站提供的信息和/或服务会促使人们以编程方式与之交互。由于您无法阻止这种情况(尽管有许多网站所有者的希望和梦想),因此最好接受它,因为提供 API 意味着人们可以准确地访问他们想要的信息/服务,从而减少您系统的负载。
【讨论】:
一件简单的事情,可以在未来为您省去很多麻烦 - 将“API 版本”作为您的 URL 的一部分,例如..
www.example.com/api/v1/getAnswers/
如果并且当您决定修改 API 时,您不必担心所有 URL 都向后兼容(破坏现有应用程序),您的用户只需开始使用 /api/v2/,您最终就会贬低旧版本。
其中,del.icio.us 和 github 都这样做
【讨论】:
构建一个好的 api 很难,需要大量的练习。
你构建的第一个api应该是你敌人网站的api。
第二个 api 用于您朋友的网站。
您构建的第三个 API 是为您的客户。
【讨论】: