如何在Hasura的form_template中使用环境变量作为值?
解决Hasura GraphQL Action中获取环境变量报错的问题
问题描述
在配置Hasura GraphQL的actions.yml文件时,使用如下request_transform配置:
request_transform: version: 2 method: POST body: action: 'x_www_form_urlencoded' form_template: user_id: '{{$USER_ID}}'
元数据应用成功,但执行查询时抛出错误:Variable 'USER_ID' not in scope,需要正确获取环境变量的值。
解决方案
Hasura的模板语法中,引用环境变量必须通过$env前缀访问,不能直接使用变量名。修改form_template中的变量引用方式即可:
request_transform: version: 2 method: POST body: action: 'x_www_form_urlencoded' form_template: user_id: '{{$env.USER_ID}}'
注意事项
- 确保
USER_ID环境变量已正确配置在你的Hasura实例中(比如Docker环境变量、Hasura Cloud项目设置等方式) - 环境变量名区分大小写,模板中的变量名需与实际配置完全一致
内容的提问来源于stack exchange,提问作者codeforHarman
相关产品推荐
相关产品推荐

