假设我有一些代码在 Heroku dyno 上运行(例如 autoscaling script ),需要访问平台 API。要访问 API,我必须使用应用程序的 API key 进行身份验证。
正确的做法是什么?
- 我引用的脚本在脚本本身中硬编码了 API key 。
- 更好的做法通常是将 secret 放入环境变量中,这是 Heroku 通常推荐的做法。然而,他们说they say :
Setting the HEROKU_API_KEY environment variable on your machine will interfere with normal functioning of auth commands from Toolbelt.
显然,我可以使用不同的 key 名称来存储 API key 。
什么是正确的方法?我在文档中找不到这个问题,但似乎是一个常见问题。
最佳答案
是的,将此 token 存储到配置变量中是正确的方法。
至于 HEROKU_API_KEY
,会发生这种情况,因为工具带将在本地查找环境变量作为尝试获取 token 的一种解决方案。
这不会影响您的生产环境(heroku 工具带在 dynos 中不可用)。
在本地,您也可以使用 python-dotenv 等工具轻松设置。 ,这将允许您拥有一个本地 .env
文件(不要将其 checkin 源代码管理,否则您的 token 可能会损坏),其所有值都可以在您的开发应用程序中作为环境变量使用.
关于python - 访问/存储脚本的 Heroku API key 的正确位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36310706/