在构建网站时我应该考虑哪些方面,并计划支持使用API的用户?
我看到大多数知名网站都在为开发人员提供API来处理,例如facebook,twitter,google,....
在构建新网站时,我应该考虑哪些一般要点,以便能够通过API支持开发人员? “只是非常一般的点,无论网站服务自己”
更新以下所有答案对我帮助很大。
答案 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)
我推荐PDF的presentation的补充Joshua Bloch和{{3}}的“如何设计一个好的API及其重要性。”
答案 4 :(得分:1)
一件简单的事情,可以在将来为您节省大量麻烦 - 包括“API版本”作为您网址的一部分,例如..
www.example.com/api/v1/getAnswers/
如果您决定修改API,则无需担心所有网址都向后兼容(破坏现有应用程序),您的用户只需开始使用/api/v2/
并最终折旧旧版本
其中,del.icio.us和github都这样做
答案 5 :(得分:0)
建立良好的api很难,需要大量的练习。
你构建的第一个api应该是敌人的网站的api。
第二个api适用于朋友的网站。
您构建的第三个API适用于您的客户。