为什么要转JSON?
渠道回传、活动报名、销售漏斗导出常常是「宽表加几十列」,接口文档却写「请求体为 JSON 数组」。自己手搓花括号与逗号,少一个引号整条样例作废;检索「csv 转 json 在线」「表格 转 json 接口」「首行 表头 键名」「postman 导入 csv」的人,多半要在不改数据库的前提下先跑通沙箱。把首行稳定映射为对象键、每行一条记录,便于和 OpenAPI 示例、移动端本地 fixture、以及数仓临时外部表对齐;扁平表能一键展开,嵌套层级仍需在应用层建模,本页先把「列名合法、类型肉眼可见」搞定。注意重复列名、首尾空格列名、以及纯数字订单号在 JSON 里常被保留为字符串——这与下游强类型校验并不冲突,反而能保住前导零。联调包附上转换前后各三行 diff,比甩整表更能推动对方先修网关校验规则。接口文档若要求嵌套对象,应另开建模任务,本页先把扁平键名与样例行数对齐,减少「文档写树、表只有根」的扯皮。自动化测试可把 golden JSON 与源 CSV 同版本锁进仓库,避免「样例更新、表头未同步」的隐性漂移。
如何把业务导出的 CSV 安全转成接口可用的 JSON 样例并与对方字段表对齐
- 在源表里冻结首行:删除合并单元格与标题横幅,保证列名唯一且不含不可见控制字符;若存在同名业务含义列,先在业务侧改名再导出,否则 JSON 键会互相覆盖。
- 在工具里选对分隔符与引号规则后先转小样本,核对空单元是输出为 null、空串还是省略键;把约定写进联调群公告,避免对方示例用 null 而你整表用空串导致校验双标。
- 只截取脱敏后的几十行生成 JSON 放进 Postman 或接口文档附件,全量数据仍走对象存储与批处理;转换完成后删除本地下载与剪贴板,防止含手机号的样例长期留在协作盘。
CSV转JSON常见问题
研发说「JSON 里金额全是字符串,网关校验不过」,这种从文本流保真带来的类型问题该在转换端硬转数字还是在契约里改 schema?
若源表存在千分位、货币符号或混用中英文小数点,盲目 cast 会静默丢精度;应先在表格里清洗再映射类型,或在契约里允许字符串并由财务模块统一解析。把三类异常样例附在评审里比争论「工具不对」更快收敛。
首行有两列都叫「备注」,转换后后者覆盖前者,这种重复表头在生产导出里偶发,我该怎么在源头防呆而不是事后怪运营手滑?
应在导出模板加校验公式或数据库视图强制别名唯一;联调前用工具预览键名列表并排重检查。若历史债短期改不动,可在中间层加前缀列名并写迁移说明,避免静默丢列。
接口要嵌套对象结构,扁平 CSV 一键转 JSON 后层级全丢,这种期望落差该怎么在需求评审里提前写死边界?
应明确本页输出为「行级扁平对象数组」,嵌套结构需由应用或 ETL 二次组装;把示例 JSON Schema 附在合同技术附录,避免上线前才发现字段要分组。对复杂层级宁可用 YAML 或专用导入器,不要强压 CSV。
运营希望把整表十万行一次性粘进浏览器转 JSON 做压测,这种体量除了拆批还有什么硬约束需要写进测试计划的风险段落?
浏览器单页内存与解析耗时都有上限,应遵守工具文件大小提示并改用采样压测或离线生成;把「禁止整包生产数据进公网页」写进信息安全条款,比事后通报泄露体面得多。
对方验收说「键名大小写不一致导致解析失败」,这种跨语言栈差异在 JSON 里能靠转换器统一成蛇形命名吗、还是必须回到源表改导出?
若全局命名规范已定,应在导出视图统一别名,或在网关做一层字段映射;转换器可辅助批量改名,但要在变更单里列出旧新对照,避免移动端缓存旧键名。切忌在多个团队各自手工改一份 JSON。