API(通过HTTPS POST请求将JSON转换为Excel)

English

WTSolutions的JSON-to-Excel是一系列可以将JSON转换为Excel的工具,无论是扁平JSON还是嵌套JSON都可以转换。它提供了"将JSON转换为Excel"的全场景解决方案,包括Excel加载项、Web应用程序:

要求

需要HTTPS POST请求工具,如Postman、Curl、Python Requests、Javascript fetch等。 确保通过设置CORS头正确处理CORS问题。

访问点

向访问点 https://mcp2.wtsolutions.cn/json-to-excel-api 发送POST请求,并在请求中包含下面使用部分描述的必要参数。

使用方法 - 专业版

请求格式

API 接受带有 application/json 主体的 POST 请求,主体包含以下参数之一:

参数

类型

是否必需

描述

data

字符串

要转换为 CSV 的 JSON 数据字符串。必须是有效的 JSON 数组或对象。

url

字符串

指向 JSON 文件的 URL。必须提供 'data' 或 'url' 中的一个

options

对象

用于自定义转换过程的配置对象

注意:

  • 提供 dataurl 中的一个,不要同时提供。

  • 如果您想使用自定义转换设置,options 是必需的。

  • 如果您没有有效的专业版代码,最多转换6行数据。如果有Pro Code,则不限制转换行数。

对 data 和 url 的要求

发送 data

  • 输入数据必须是有效的 JSON 字符串。JSON 格式要求可在 JSON 格式要求 获取,验证器可在 JSON 到 Excel Web 应用 获取。

  • 如果 JSON 是对象数组,每个对象将被视为 CSV 中的一行。

  • 如果 JSON 是单个对象,它将被转换为包含键值对的 CSV。

  • CSV 将包含基于 JSON 对象中键的标题。

  • 此工具返回可轻松转换/导入到 Excel 的 CSV 格式数据。

发送 url

  • URL 应该是公开可访问的。

  • JSON 文件应该是 .json 格式。

  • JSON 文件应包含有效的 JSON 数组或对象。JSON 格式要求可在 JSON 格式要求 获取,验证器可在 JSON 到 Excel Web 应用 获取。

  • 如果 JSON 是对象数组,每个对象将被视为 CSV 中的一行。

  • 如果 JSON 是单个对象,它将被转换为包含键值对的 CSV。

  • 此工具返回可轻松转换/导入到 Excel 的 CSV 格式数据。

选项对象

选项对象可以包含以下属性:

属性

类型

默认值

描述

proCode

字符串

""

专业版代码,需要有效的 JSON 转 Excel 服务订阅。proCode可以通过options中参数传递,也可以在https请求头中传递proCode。

jsonMode

字符串

“flat”

JSON 输出的格式模式:“nested”(嵌套)或 “flat”(扁平)

delimiter

字符串

“.”

使用 jsonMode: “nested” 时,嵌套 JSON 键的分隔符字符,可接受的分隔符有 “.”、“_”、“__”、“/”。

maxDepth

字符串

"unlimited"

使用 jsonMode: “nested” 时,嵌套 JSON 对象的最大深度。maxDepth 可接受的值为 "unlimited"、"1" ~ "20"。

注意:

  • proCode 是可选的。如果没有提供 proCode,将最多转换6行数据。

  • proCode 可以通过 options 中参数传递,也可以在 https 请求头中传递 proCode。

  • 详细的转换规则可在 转换规则 中找到。

响应格式

API 返回具有以下结构的 JSON 对象:

字段

类型

描述

isError

布尔值

指示处理请求时是否出错

msg

字符串

'success'(成功)或错误描述

data

字符串

转换后的 CSV 数据字符串,如果出错则为空。此 CSV 数据可轻松导入到 Excel。

示例

使用 'data' 的请求示例

请求:

{ 
     "data": "[{\"name\":\"John\",\"contact\":{\"email\":\"john@example.com\",\"phone\":\"1234567890\"}},{\"name\":\"Jane\",\"contact\":{\"email\":\"jane@example.com\",\"phone\":\"0987654321\"}}]",
     "options":{
          "proCode": "input your Pro Code here",
          "jsonMode": "nested",
          "delimiter": ".",
          "maxDepth": "unlimited"
     }
}

响应:

{
     "isError": false,
     "data": "name,contact.email,contact.phone\nJohn,john@example.com,1234567890\nJane,jane@example.com,0987654321",
     "msg": "success"
}

错误回复示例

{
     "isError": true,
     "msg": "Invalid JSON format",
     "data": ""
}

数据类型处理

API 会自动处理 JSON 中的不同数据类型:

  • 数字:转换为 CSV 中的数值

  • 布尔值:转换为 'true'/'false' 字符串

  • 字符串:必要时进行转义并加引号

  • 数组:转换为 JSON.stringify 后的数组字符串

  • 对象:转换为 JSON.stringify 后的对象字符串

错误处理

API为常见问题返回描述性错误消息:

  • Invalid JSON format:当输入数据不是有效的JSON字符串时

  • Empty JSON data:当输入数据是空的JSON字符串时

  • Network Error when fetching file:当从提供的URL下载文件出错时

  • File not found:当找不到提供的URL上的文件时

  • Server Internal Error:当发生意外错误时

  • Max 6 rows processed, upgrade to Pro to process more data:当没有提供Pro Code时,最多转换6行数据