我正在使用 PyQt5 编写一个桌面应用程序,它使用 Wordnik API 来获取单词定义。我没有服务器端访问权限,也不想投资购买它。有什么方法可以可靠地隐藏我的密钥,以便我可以在 GitHub 上共享我的程序?
2 回答
不幸的是,不,我们的Wordnik 服务条款不允许在最终用户可以访问的地方共享密钥。如果您的应用程序是非商业的,您可以向用户分享说明,帮助他们申请并将自己的 Wordnik 密钥添加到他们的应用程序副本中(这也对您有所帮助,因为您的密钥不会根据您的用户达到我们的 API 限制)。
如果这是一个商业应用程序,请与我们联系 (apiteam@wordnik) 以提供有关您的用例的更多详细信息,因为我们正在研究如何使这更容易。作为一家工程资源有限的小型非营利组织,我们不能承诺提供快速解决方案,但由于我们的使命是找到并分享每一个英语单词,我们总是有兴趣了解更多关于人们如何使用我们的 API 的信息。:)
感谢您使用 Wordnik!
At the very least you could store your API key in a separate source file (which you would exclude from the repository via .gitignore
) and check for exceptions while importing that file (see this), alerting to provide own API key if that fails.
Storing the API key in a non-source configuration file is another option, but then your worries are in storing that file in a way that is not accessible to the end user of your application.