我应该考虑为我正在建设的新网站创建API?

时间:2009-06-04 12:18:32

标签: web-services api

在构建网站时我应该考虑哪些方面,并计划支持使用API​​的用户?

我看到大多数知名网站都在为开发人员提供API来处理,例如facebook,twitter,google,....

在构建新网站时,我应该考虑哪些一般要点,以便能够通过API支持开发人员? “只是非常一般的点,无论网站服务自己”

更新以下所有答案对我帮助很大。

6 个答案:

答案 0 :(得分:3)

肥皂或XML

取决于您的申请。如果它很复杂,你可能需要soap的功能。 KISS 应特别适用于API。在资源方面有一个明智的网址布局有意义

www.site.com/people/london

作为资源。

http://en.wikipedia.org/wiki/Restful

了解为什么使用PUT,POST,GET等很重要。

祝你好运

答案 1 :(得分:2)

我想你会先确定网站支持的功能(例如,addUser,addStory,addComment,editXYZ等,具体取决于网站的类型),以及它提供的数据(getCommentsForStory,getStories,getUser) ,...),并为这些功能创建Web服务API,并进行适当的安全检查等。

如果您已经很好地对网站进行了编码,那么在您的网站功能面前放置一个Web服务层应该非常简单(它只是在您的控制器和模型之上的另一个视图)。

答案 2 :(得分:2)

IMO提供API的最令人信服的理由是,您的网站提供的信息和/或服务将促使人们以编程方式进行交互。由于你无法阻止这种情况(尽管许多网站所有者的希望和梦想),最好接受它,因为提供API意味着人们可以准确访问他们想要的信息/服务,减少系统负载。

答案 3 :(得分:2)

我推荐PDFpresentation的补充Joshua Bloch和{{3}}的“如何设计一个好的API及其重要性。”

答案 4 :(得分:1)

一件简单的事情,可以在将来为您节省大量麻烦 - 包括“API版本”作为您网址的一部分,例如..

www.example.com/api/v1/getAnswers/

如果您决定修改API,则无需担心所有网址都向后兼容(破坏现有应用程序),您的用户只需开始使用/api/v2/并最终折旧旧版本

其中,del.icio.usgithub都这样做

答案 5 :(得分:0)

建立良好的api很难,需要大量的练习。

你构建的第一个api应该是敌人的网站的api。

第二个api适用于朋友的网站。

您构建的第三个API适用于您的客户。