在我4年的经验中,我开发了很多Web应用程序.现在,可编程网络的概念变得越来越流行,几乎每天都会发布新的API.我想为这些端点中的一些开发一个java API /库.Ex stackapps,reddit,digg等...我想知道的是你的人是,
.
如果细节不充分,请评论.
bak*_*kal 13
稳定性
如果您为Web应用程序提供API,可能是因为您希望其他人使用它来构建应用程序.如果它不稳定,他们会讨厌你强迫他们跟进你的频繁更改.如果这需要太长时间,他们的网站可能会长时间无法正常工作,而他们正在确定在API中执行操作的新方法.
紧凑
您希望API 完整但紧凑,因为不需要记住太多.
正交
设计它所以只有一种方法可以改变每个属性或触发一个动作.正交API中的操作应该具有最小(如果有的话)副作用.
此外,一旦发布,从公共API中删除功能并不是一个好习惯.
安全和身份验证
由于API是Web公开的,因此您必须对每个请求进行身份验证并授予适当的访问权限.安全常识适用于此.
快速响应或分成几部分
我相信在网络环境中,我们应该快速响应并避免需要很长时间才能完成的请求.如果它是不可避免的,那么最好发送一个ACK并将任务分成几个部分和随后的呼叫.