我在寻找关于REST风格的API设计的建议。我已经阅读了很多关于REST API方案,认证/授权方式等内容。我不能确定的是,如果我真的需要使用API密钥。根据我的理解,如果您要监视使用情况,限制每个应用程序的请求和统计数据,使用API密钥很有用。REST风格的API键建议
我想避免什么是必须添加/管理/删除应用程序,并添加/删除应用程序管理员创建额外的Web界面。也许有一个更简单的方法来做API密钥分发。还是我真的需要那些?我的意思是,监控和限制使用是很酷的,听起来很有用,但它值得我需要为密钥分发做的其他事情。
更具体地讲我的网站是一样的东西SlideShare上和scribd。我想给API访问其功能,如添加和管理文档以及获取有关用户的信息。因此,例如上传一个文件,你需要以某种方式进行身份验证,并使用一个特定的帐户来做到这一点。在这种情况下是API密钥的一个要求,或者我可以坚持认证用户?
那你觉得对我来说是处理API密钥的最佳途径?或者我应该使用它们呢?有更聪明的方式来分发(创建,删除)密钥吗?
感谢提前:)
我检查了你放在这里的那些链接。我不想使用外部服务(即使它们是免费的)。而关于使用api密钥进行某些服务,而不是将其用于其他服务,是否会影响API密钥的用途? – stormbreaker 2011-05-14 21:05:40
好吧谷歌这样做是这样几年和许多其他的,也比你自己写(如果不存在一个周围的web sourceforge等)api管理软件。使用api密钥限制所有内容(不知道你的主机是谁)要好得多,因此你可以完全控制使用情况,以便滥用软件的风险要低得多,安全性也要高一些。或者每个人都可以在没有api的情况下使用它,并且可以做他们想做的任何事情(并且最终每小时将服务器的请求降低到很多)。我认为安全性更重要。 – 2011-05-14 21:18:23
好的,你回答为什么我应该使用API密钥。如何使用它?如果我向所有请求的人提供一个API,它不会允许他们切换这些API并仍然做坏事? – stormbreaker 2011-05-15 08:21:50