跳到主要内容

Bicep Formatter & Validator

格式化并验证 Azure Bicep 基础设施即代码模板 — 将 resource、module、param 和 output 声明重新缩进为一致的 2 或 4 个空格嵌套,并捕获不平衡的括号、未终止的字符串/注释和意外的顶级语句。

输入

Drop a file or browse
One file · text

输出

格式化的 Bicep
 
验证问题
严重程度消息
No data yet
这对您有帮助吗?

使用指南

粘贴一个缩进不一致或缺失的 Bicep 资源模板,即可获得一个整洁嵌套且缩进一致的版本——直接在浏览器中进行,无需将任何内容上传到服务器。Bicep Formatter & Validatorparamvarresourcemoduleoutputtype 声明重新缩进为一致的 2 或 4 个空格嵌套,并标记基本结构问题:不平衡的括号、无法合法跨越行的字符串、未终止的注释或意外的顶级语句。

为以下场景而设计:您没有 Bicep CLI 或 VS Code 扩展可用时——从拉取请求中粘贴的模板、从文档或 AI 助手复制的代码片段(缩进不一致或混乱)、或在将内容粘贴回编辑器之前进行的快速检查。

如何使用

  1. 将 Bicep 模板粘贴到输入框中,或上传 .bicep 文件。
  2. 可选地在 2 和 4 个空格之间切换缩进大小
  3. 复制格式化的结果,或将其下载为 main.bicep

格式化在您输入或更改选项时自动运行,因此您会立即看到结果。单独的验证问题表列出发现的任何问题——或确认没有问题。

它做什么

  • 一致的缩进,根据实际的括号嵌套而不是源代码碰巧拥有的任何缩进计算——零缩进的模板格式与已整洁的模板完全相同。
  • 装饰器和循环表达式正确地"贴靠"。 @allowed([...]) 和循环包含资源的 = [for item in items: {...}] 在一行上打开两个括号,但只在内容上缩进一个级别,与真实 Bicep 格式化程序的处理方式相匹配——而不是每个括号一个缩进的简单计数。
  • 字符串和注释保持不变。 字符串内的括号——包括可能包含进一步嵌套的字符串和表达式的 ${...} 插值——永远不会影响缩进。多行 '''...''' 字符串或块注释 /* ... */ 在开始后逐字节保留,而不是冒着破坏字面内容的风险。
  • 没有任何内容被重新排序。 属性顺序、行内间距和每个值都保持原样——只有前导空格会改变。
  • 基本验证:不平衡的 { } / [ ] / ( )、遇到原始换行符的普通 '...' 字符串(只有 ''' 字符串可以跨越行)、未终止的块注释以及不以已识别的声明关键字(paramvarresourcemoduleoutputtypefunctargetScopemetadataimportextensionusingprovider)开头的顶级行。

隐私

一切都在浏览器的客户端进行。您的模板绝不会上传到服务器——粘贴包含实际订阅 ID 或资源名称的模板,它永远不会离开您的计算机。

这是否替代 Bicep CLI 的 bicep format?

对于修复缩进和捕获上述四五个基本错误,是的。它不会针对 Azure 资源架构对属性名进行类型检查、解析模块引用或计算表达式——那是 bicep build/bicep lint 的用途(需要基于 .NET 的 Bicep CLI)。

这会破坏我的模板吗?

格式化程序只更改前导空格——它永远不会改动属性顺序、值或内部间距。当遇到无法安全重新格式化的结构问题(不平衡的括号、未终止的字符串)时,它会保持输入不变,并在"验证问题"表中报告问题,而不是进行猜测。

相关工具

azurearm templateinfrastructure as codeiacazure resource managercloud deploymentdevopsazure cli

Use it from code

From 3 credits per call

REST API

curl -X POST https://api.iotools.cloud/v1/tool/bicep-formatter-validator \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "bicepInput": "@description('Name of the storage account')\npara…",
    "indentSize": "2"
  }'

Swap in your own key from your account. The tool's fields are the body — no wrapper.

Ask an AI agent

Use the IOTools `bicep-formatter-validator` tool (Bicep Formatter & Validator) on this input:

YOUR_INPUT_HERE

Paste this at any agent connected to the IOTools MCP server, then add your input.

喜欢这些工具?去掉广告吧。

一次性付款即可永久移除您账户中的所有广告。无需订阅,不追踪。