当我尝试通过 Amazon 位置 API 获取位置详细信息时,收到 403 Forbidden。
我已启用“请求用户访问资源和功能”。但我仍然收到 403 Forbidden 响应?
最佳答案
apiAccessToken
包含在对您技能的所有请求中,但这并不意味着您有权访问资源。您必须在 Alexa 技能的设置
菜单下明确授予对您的技能的访问权限,或者您必须向用户发送许可卡以获得同意。
在node sdk中你可以发送这样的权限卡:
return handlerInput.responseBuilder
.speak(speechOutput)
.withAskForPermissionsConsentCard(['read::alexa:device:all:address'])
.getResponse();
其中 read::alexa:device:all:address
是设备完整地址
的权限值。
授予权限后,使用 deviceId
和 apiAccessToken
向指定的 apiEndpoint
发起 GET 请求
完整地址的端点为:/v1/devices/*deviceId*/settings/address
国家/地区和邮政编码:/v1/devices/*deviceId*/settings/address/countryAndPostalCode
更多信息here
希望这有帮助!
关于alexa-skills-kit - 使用 Alexa 位置 API 时 Alexa 禁止响应 403,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51207052/