如何在VSCode中使用Python开发Alexa Skill 解决ASK扩展与CLI相关问题
操作步骤
- 先校验ASK CLI版本
先运行ask --version确认你安装的是2.x以上版本,v1版本对托管技能的支持逻辑和新版完全不兼容,版本不对的话先执行npm uninstall -g ask-cli卸载旧版,再运行npm install -g ask-cli@2安装新版。 - 重置本地授权凭证
删除本地ASK缓存目录:Windows系统删除%USERPROFILE%\.ask文件夹,macOS/Linux删除~/.ask文件夹。之后运行ask configure,按提示跳转到亚马逊开发者页面完成登录授权,授权成功后会自动在本地生成配置文件。 - 拉取托管技能项目
不要直接用原命令拉取,改为执行:
如果你只有一个开发者账号,ask init --hosted-skill-id amzn1.ask.skill.myId --profile default--profile default参数可以省略。 - 解决git凭证报错
如果还是拉取失败,运行ask util git-credentials-helper get,命令会输出对应的git用户名和密码,直接复制到VSCode弹出的凭证输入框即可,不需要手动拼接Authorization请求头,手动请求返回401就是因为缺少动态生成的授权令牌,不用自己尝试构造。 - 扩展程序适配
打开ASK扩展设置,选择和你开发者账号对应的区域节点,比如你注册账号时选的北美区就选us-east-1,区域选错会读不到你的技能列表,导入时如果弹凭证框,填刚才生成的git用户名密码即可。
后续开发提示
- 本地拉取的项目中,
lambda目录就是Python代码的存放路径,修改完成后执行ask deploy就能直接同步到Alexa托管服务器,不需要手动打包上传。 - 本地测试可以直接用
ask dialog命令模拟用户交互请求,不需要每次都跳转网页端后台测试。
内容的提问来源于stack exchange,提问作者elpekeñin
相关产品推荐
相关产品推荐

