2016-02-28 120 views
0

我已經在heroku上安裝了SparkPost。問題是我找不到SparkPost的任何設置,無論是與域綁定還是使用API​​。省事似乎安裝sparkpost包點子,但使用的文檔,我不能API要麼在拉:從python的SparkPost/Heroku獲取API密鑰

sp = SparkPost() 

sp = SparkPost(os.environ['API_KEY_SPARKPOST']) 

前者提供了以下錯誤:

SparkPostException: No API key. Improve message. 

和後者,找不到任何環境變量。我有一個搜索,我沒有看到任何與SparkPost相關的環境變量。我沒有在控制面板中找到任何可以找到它的API選項。

回答

2

爲Heroku附加環境變量被稱爲SPARKPOST_API_KEY這就是默認情況下使用的。假設你在本地運行,第一個例子中的問題是你的環境中可能沒有SPARKPOST_API_KEY。當您運行heroku local時,它將加載項目根目錄中名爲.env的文件中的變量。你會想要做這樣的事情補充說:

heroku config:get SPARKPOST_API_KEY -s >> .env

你的第二個例子是引擎蓋下的python-sparkpost庫究竟是幹什麼的,但是變種的名稱是SPARKPOST_API_KEY

您可以在這裏看到可用於SparkPost插件的所有環境變量列表:https://devcenter.heroku.com/articles/sparkpost#provisioning-the-add-on。您還可以運行heroku config以查看命令行中的所有環境變量。

+1

如果你想聊這個或任何其他問題,實時,隨時接觸到我們直接在懶散 - http://slack.sparkpost.com。 – richleland

+0

謝謝 - 可能有不止一個問題拼湊在一起。還有一種方法可以從前端獲取API。我看到一些截圖,UX是否改變了? – disruptive

+0

您只能在創建時看到API密鑰。如果你去https://app.sparkpost.com/account/credentials,你可以在那裏創建新的密鑰 - 一旦創建,它會告訴你完整的密鑰進行復制。 – richleland

1

如果未提供參數,則將使用存儲在環境變量SPARKPOST_API_KEY中的API密鑰創建對象SparkPost

設置在Heroku上,你可以使用下面的命令heroku toolbelt環境變量:

heroku config:set SPARKPOST_API_KEY=<your-key-here>