我正在为我公司的数据设计一个公共 API。我们希望应用程序开发人员注册一个 API 密钥,以便我们可以监视使用和过度使用。
由于 API 是 REST,我最初的想法是将这个键放在一个自定义头中。这就是我看到的谷歌、亚马逊和雅虎的做法。另一方面,我的老板认为,如果键只是 URL 的一部分,比如“ http://api.domain.tld/longapikey1234/resource”,那么 API 就更容易使用了。我想这是有原因的,但是这违反了 URL 的原则,它只是一个你想要的简单地址,而不是你想要它的方式或者原因。
你觉得把密钥放在 URL 中合乎逻辑吗?或者,如果编写一个简单的 javascript 前端到某些数据,您是否更愿意不必手动设置 HTTP 头?