我在Squarespace上有一个网站,我想展示一些来自其他地方的数据(例如OpenWeatherMap的One Call API(。这是一个免费的API。
据我所知,没有办法完全保护Squarespace上的API密钥(除非你使用他们列出的一些商业API。如果我把API密钥放在网站上的任何文件中,它都会被暴露,因为Squarespace定义为前端,而前端对API密钥存储是不安全的。
假设我只将API密钥用于免费的API计划,那么在Squarespace文件上发布免费的API密钥(如OpenWeatherMap API密钥(有哪些风险?
速率限制
在您的例子中,我认为一个风险是OpenWeatherMap可能会收到太多带有API密钥的请求,并关闭您的访问。
通常,免费的API密钥提供有速率和/或总请求限制。如果一个或多个用户使用您的密钥提出自己的请求,特别是以高速率或高容量使用脚本,提供商可能会认为这是对其服务的滥用。
使用条款
另一件需要考虑的事情是,当您请求密钥时,您可能已经同意不共享密钥,并做出合理的努力将其保密。如果是这样的话,把它张贴在任何人都能得到的地方都会违反你的协议。
很可能,你唯一的风险是被暂时或永久阻止使用该服务,但这可能是它的实际程度