我想创建一个桌面应用程序,需要使用第三方REST API来获取信息。但是,请求的数量受API密钥的限制。如果我为所有用户使用一个API密钥,请求配额将很快耗尽。现在,让每个用户注册他/她自己的API密钥是标准的(和合法的)吗?如何在开源项目的上下文中使用API密钥?
要生成API密钥,我想在应用程序中创建一个注册表单,用户在其中输入他/她的信息,然后应用程序将这些信息发送到第三方网站以获取API密钥。听起来不错吗?
答案 0 :(得分:1)
通常,API的使用仅限于来自一台计算机的请求,而不是大多数时间的API密钥。
同样取决于您使用的第三方服务的类型,但是服务请求应由客户端而不是服务器建立。
例如,如果您想知道特定地点的地理坐标,但显然您无法直接询问用户GPS坐标。因此,您可以将Google Maps Javascript Library实施到您的应用中,该应用会向Google API请求人类可读地址的坐标并将其返回给客户端。这又将数据发送到您的服务器。
通过这种方式,您的服务器永远不会与第三方服务联系。
如果您有敏感数据或数据不应由用户操作,您当然必须直接向服务器请求。但是,在将某些内容混合在一起之前,请先查看服务的文档,这不是服务提供商的意图。
永远不要试图欺骗服务提供商。他们会检测您的不恰当用途,并一直阻止您!