GraphQL格式化工具

免费在线GraphQL查询语句格式化美化工具,支持语法缩进、代码压缩、查找字段,处理query/mutation/subscription,浏览器本地运行。

0
行数
0
字符数
0
最大嵌套

功能介绍

GraphQL 格式化工具用于快速美化或压缩 GraphQL 查询语句(Query)、变更(Mutation)、订阅(Subscription)以及 Schema 定义。工具完全在浏览器本地运行,无需上传服务器,支持语法高亮、括号匹配检查和一键复制。

如何使用

  1. 在上方输入框中粘贴或输入你的 GraphQL 语句。
  2. 选择「格式化」或「压缩」模式,可勾选是否启用语法高亮。
  3. 点击「格式化 / 压缩」按钮,或直接输入等待自动计算(约 300ms 延迟)。
  4. 结果会显示在下方输出区,同时展示行数、字符数和最大嵌套深度。
  5. 点击「复制结果」按钮可将格式化后的内容一键复制到剪贴板。

计算原理

本工具采用字符级解析器逐字符扫描输入,核心逻辑如下:

括号匹配校验基于栈结构:若闭括号与栈顶不匹配,或扫描结束后栈不为空,则判定为语法错误。

注意事项

格式化后提示括号不匹配怎么办?

请检查输入的 GraphQL 语句中是否有遗漏的大括号、小括号或方括号。工具会提示不匹配的位置和类型,你可以对照错误信息逐行排查。常见原因包括:少写一个右花括号、圆括号不对称、数组方括号未闭合等。

GraphQL 的注释会被保留吗?

格式化模式下会保留 # 开头的单行注释,并按当前缩进层级对齐;压缩模式下会移除所有注释以减小体积。多行字符串(块字符串)中的内容会被完整保留,不会被当作注释处理。

压缩和格式化有什么区别?分别在什么场景用?

格式化(美化)会增加缩进和换行,便于开发调试和代码审查;压缩会去除所有多余空白和注释,体积更小,适合生产环境中减少网络传输数据量。两者功能互逆,你可以根据需要切换模式。

工具支持 Schema 定义语言(SDL)吗?

支持。无论是查询语句(Query / Mutation)还是 Schema 定义(type / input / enum / interface / union 等),本工具都能正确格式化和压缩,因为两者的括号结构和字符串规则是一致的。