如何通过表达式或模块将JSON格式字符串转换为数组?
问题说明
我获取到一段JSON格式的字符串:
"[\"123.123.123.123\",\"123.123.123.123\"]"
该字符串来自请求headers的ip字段,原始请求结构如下:
{ "headers": { "ip": "[\"123.123.123.123\",\"123.123.123.123\"]" } }
需要将这个字符串转换为数组,附工作流截图:
- 工作流截图1:展示工作流初始模块配置
- 工作流截图2:展示数据处理环节设置
- 工作流截图3:展示输出结果预览
解决方案
方式一:使用JSON解析表达式
直接调用JSON解析函数,多数工作流工具(如Make、Zapier)支持类似JSON.parse(headers.ip)的表达式,可直接将字符串解析为数组。
- 若字符串存在多余转义问题,可先去除转义再解析:
JSON.parse(headers.ip.replace(/\\/g, ''))
方式二:使用工作流模块处理
根据工作流截图,可通过以下步骤操作:
- 添加JSON解析模块(或数据转换类模块)
- 将
ip字段的字符串作为模块输入 - 配置模块以解析JSON格式字符串,输出即为数组类型数据
- 若工具无专门解析模块,可使用代码模块,写入解析逻辑(以JavaScript为例):
const ipStr = inputData.headers.ip; const ipArray = JSON.parse(ipStr); return { ipArray };
内容的提问来源于stack exchange,提问作者HarriS
相关产品推荐
相关产品推荐

