我问个问题!
我有一个webapp,它只从API中获取数据,所以我没有后端部分。我的问题是你把你的API密钥放在哪里?因此,为了响应文档,您不应该将API密钥存储在应用程序中,所以当您有一个使用API的get应用程序,并且您必须在get请求中使用API密钥时,如何管理它?
发布于 2021-07-31 20:14:44
更多的是建议他们保持API键服务器端,并让您的web应用程序与您的服务器进行通信。否则,恶意用户可以很容易地窃取您的API密钥,并将其用于任何事情。
如果您认为如果您的密钥被破坏(即是),安全风险并不大,那么就可以将其保存在key应用程序中。这取决于您的用例和API密钥的用途。
发布于 2021-07-31 22:29:20
在客户端应用程序中不公开API密钥的唯一方法是创建后端,并从后端应用程序服务客户端应用程序,如上述Kelvin Schoofs和Peter Badida exposing (或使用AWS凭据库等第三方服务)。我建议您使用库作为后端,因为这将为您处理大量的锅炉板代码。这方面有很多在线教程。
按照其他几个用户的建议,使用dotenv文件只会对Git等版本共享工具隐藏API代码(因为您可以忽略gitignore中的dotenv )。非常重要的是,您应该了解使用react应用程序的dotenv过程。任何在浏览器中打开Dev控制台的用户都可以在静态HTML中查看公开的API键。
发布于 2021-07-31 21:29:07
创建一个dotenv文件并存储所有秘密和API密钥。确保在每个变量之前使用REACT_APP_。
DOCS:https://create-react-app.dev/docs/adding-custom-environment-variables/ dotenv包:https://www.npmjs.com/package/dotenv
https://stackoverflow.com/questions/68605529
复制相似问题