如何在Amplify GraphQL Explorer中编辑API密钥?本地测试输入框只读
解决Amplify本地GraphQL Explorer API密钥输入框只读问题
方法1:用Amplify CLI重新配置API认证模式
- 先关掉正在运行的
amplify mock api进程(按Ctrl+C) - 在终端执行
amplify update api,跟着提示操作:- 选择GraphQL类型
- 选择Edit authorization modes选项
- 找到API key项,设置有效期(比如填365天),确认启用该认证模式
- 完成配置后,重新运行
amplify mock api - 启动mock服务后,CLI会打印出生成的API密钥,直接复制这个密钥粘贴到GraphQL Explorer的输入框即可——此时输入框应该不再是只读状态
方法2:手动修改本地配置文件
如果CLI配置没生效,直接修改配置文件尝试:
- 找到项目根目录下的
amplify/backend/api/[你的API名称]/parameters.json文件 - 查找
apiKeyExpirationDays字段,给它设置一个大于0的数值(比如365),如果没有这个字段就自行添加 - 同时确认
authModes数组中包含API_KEY - 保存文件后重启
amplify mock api,这时候Explorer的API密钥输入框就能编辑了,使用CLI输出的密钥或者自定义密钥均可
额外注意事项
- 要确保你的Schema中已经配置了API密钥认证规则,比如在需要公开访问的类型上添加
@auth(rules: [{ allow: public, provider: apiKey }]) - 如果mock服务启动时没有输出API密钥,检查
amplify/backend/api/[你的API名称]/build/schema.graphql中是否包含API密钥相关的认证配置
内容的提问来源于stack exchange,提问作者Bandisa Masilela
相关产品推荐
相关产品推荐

