使用Terraform创建GCP可用性检查时遇未明400错误求助
问题排查与解决
核心原因
报错提示Unable to parse 'required_content' as JSON value,根源是content_matchers块的content字段配置不符合GCP API要求:当使用MATCHES_JSON_PATH匹配方式时,content必须传递合法的JSON格式值。你当前代码里写的content = "UP",传递给API的是未用双引号包裹的字符串,不符合JSON字符串的格式规范(JSON字符串必须用双引号包裹)。
修复方案
修改content_matchers中的content字段,把字符串值用双引号包裹,并在Terraform中转义双引号:
content_matchers { content = "\"UP\"" matcher = "MATCHES_JSON_PATH" json_path_matcher { json_path = "$.status" json_matcher = "EXACT_MATCH" } }
验证说明
修改后,Terraform会将"UP"作为合法的JSON字符串发送给GCP API,API就能正确解析required_content字段,实现$.status路径值与"UP"的精确匹配。
内容的提问来源于stack exchange,提问作者hsb
相关产品推荐
相关产品推荐

