无法将测试用户注册至Garden FI的技术问题求助
排查Garden FI注册接口JSON解码失败问题
问题场景
新注册开发者账号并创建测试用户后,调用Garden FI的POST https://digital.garden-fi.com/a/consumer/api/v0/enrollment/lookup注册接口时,系统返回"Oops, something went wrong on our end. Please try again.",抓包显示为400 Bad Request,响应明确提示请求体JSON解码失败。
核心排查点
从响应里的请求体片段出发,重点检查以下几个方向:
Content-Type请求头必须正确
确保请求头设置了Content-Type: application/json,如果漏设或设为application/x-www-form-urlencoded这类格式,服务端不会按JSON规则解析请求体。检查JSON语法合规性
实际发送的JSON必须符合标准语法:- 所有键名、字符串值必须用双引号包裹,不能混用单引号或无引号
- 最后一个键值对后不能加多余逗号(比如
deviceInfo里最后一个字段browserEngineVersion后若有逗号,会直接导致解析失败) - 字段值包含特殊字符(如双引号、换行)时,必须正确转义为
\"、\n格式
避免请求体双重转义
若用代码构造请求,不要做重复转义操作——比如先把对象序列化为JSON字符串,又再次对该字符串转义,会导致服务端收到带\"的字符串,而非正常JSON结构。核对测试用户字段合法性
虽然报错指向JSON解码,但也可能是新账号权限未生效,或者institutionId这类字段使用了非测试环境允许的值,先对照Garden FI开发者文档确认测试数据规范。
快速验证方法
用Postman或curl直接发送标准JSON请求,排除代码层面的问题:
curl -X POST https://digital.garden-fi.com/a/consumer/api/v0/enrollment/lookup \ -H "Content-Type: application/json" \ -d '{ "identifier": "xxxxxxxxx", "institutionId": "xxxxxxx", "accountNumber": "xxxxxx", "phone": "xxxxx", "email": "xxxxxx", "deviceId": "online-xxxxxx", "deviceInfo": { "appVersion": "2.1748.0", "os": "Windows", "osVersion": "10.0.0", "browser": "Microsoft Edge", "browserVersion": "120.0.2210.144", "browserEngine": "Blink", "browserEngineVersion": "120.0.2210.144" } }'
内容的提问来源于stack exchange,提问作者Tyler Wilson
相关产品推荐
相关产品推荐

