403 使用 Alexa 位置时来自 Alexa 的禁止响应 API
403 Forbidden response from Alexa while using Alexa location API
当我尝试通过亚马逊位置 API 获取位置详细信息时,出现 403 Forbidden。
我已经启用 "Request users to access resources and capabilities." 但我仍然收到 403 禁止响应?
apiAccessToken
包含在对你的技能的所有请求中,但这并不意味着你可以访问资源。您必须在 alexa 技能的 Settings
菜单下明确授予对您的技能的访问权限,或者您必须向用户发送许可卡以获得同意。
在node sdk中你可以像这样发送一个许可卡:
return handlerInput.responseBuilder
.speak(speechOutput)
.withAskForPermissionsConsentCard(['read::alexa:device:all:address'])
.getResponse();
其中 read::alexa:device:all:address
是 Device Full Address
的权限值。
授予权限后,使用 deviceId
和 apiAccessToken
向指定的 apiEndpoint
发出 GET 请求
完整地址的终点是:/v1/devices/*deviceId*/settings/address
Country/region & 邮政编码:/v1/devices/*deviceId*/settings/address/countryAndPostalCode
更多信息here
希望对您有所帮助!
当我尝试通过亚马逊位置 API 获取位置详细信息时,出现 403 Forbidden。
我已经启用 "Request users to access resources and capabilities." 但我仍然收到 403 禁止响应?
apiAccessToken
包含在对你的技能的所有请求中,但这并不意味着你可以访问资源。您必须在 alexa 技能的 Settings
菜单下明确授予对您的技能的访问权限,或者您必须向用户发送许可卡以获得同意。
在node sdk中你可以像这样发送一个许可卡:
return handlerInput.responseBuilder
.speak(speechOutput)
.withAskForPermissionsConsentCard(['read::alexa:device:all:address'])
.getResponse();
其中 read::alexa:device:all:address
是 Device Full Address
的权限值。
授予权限后,使用 deviceId
和 apiAccessToken
向指定的 apiEndpoint
完整地址的终点是:/v1/devices/*deviceId*/settings/address
Country/region & 邮政编码:/v1/devices/*deviceId*/settings/address/countryAndPostalCode
更多信息here
希望对您有所帮助!