为什么我的 SurveyMonkey API get 请求收到 403 错误响应?

Why am I getting a 403 error response with my SurveyMonkey API get request?

我已尝试按照 SurveyMonkey API 文档进行大致了解,只是为了在进入我的私人应用程序的非常简单的功能之前熟悉它。

我几乎尝试完全复制我在文档中找到的内容,但收到 403 响应。您可以在文档中查看准确的代码片段:https://api.surveymonkey.net/v3/docs?python#surveys-id

api_token = 'MyVerySecretApiKey'

survey_id = 'ASillyLittleNumber'


s.headers.update ({
    "Authorization": "Bearer %s" % api_token,
    "Content-Type": "application/json"
})

HOST = "https://api.surveymonkey.com/v3/surveys/%s" % (survey_id)

print s.get(HOST)

我已经打印了 GET 只是为了看看我到底得到了什么,我得到了响应 [403]。我无法弄清楚我做了什么,尤其是对于这样一个简单的应用程序。我已经检查了我的 api 令牌和调查 ID 几次以确保准确性。我对文档中的代码有什么不理解的地方吗?

我已将我的 api 密钥和调查 ID 作为字符串传递,这是正确的吗?

您的代码看起来不错 - requests 模块将处理您 headers 中的整数/字符串,无需担心。

我唯一能想到的是,也许您混淆了 API 密钥和不记名令牌 - 基于这一行:

api_token = 'MyVerySecretApiKey'

检查您的 SM 开发页面上的设置页面,看看您是否可以为您的帐户生成不记名令牌,以及它是否与 API 密钥不同。