XML格式化校验
免费在线XML格式化校验工具,支持美化、压缩、语法校验、错误行号定位,CDATA原样保留,适配SOAP接口报文调试,本地浏览器处理不上传,免登录即用。
0 次使用 0
输入
输出
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:usr="http://api.example.com/user">
<soapenv:Header/>
<soapenv:Body>
<usr:queryUserRequest>
<usr:userId>10001</usr:userId>
<usr:detail>
<usr:includeProfile>true</usr:includeProfile>
<usr:includeOrders>false</usr:includeOrders>
</usr:detail>
<usr:remark>
<![CDATA[备注 <无特殊字符转义> & 内容]]>
</usr:remark>
</usr:queryUserRequest>
</soapenv:Body>
</soapenv:Envelope> 缩进
XML常见语法错误
XML比HTML严格得多,标签必须完全闭合、大小写敏感、属性必须加引号。以下是调试SOAP报文和配置文件时最常见的错误:
| 错误类型 | 示例 | 说明 |
|---|---|---|
| 标签未闭合 | <user>...(缺</user>) | 每个开始标签必须有对应的结束标签 |
| 大小写不匹配 | <Name>...</name> | XML标签区分大小写,开始与结束必须一致 |
| 属性未加引号 | <user id=1> | 属性值必须用单引号或双引号包裹 |
| 特殊字符未转义 | a & b、<tag> 原样出现 | &、<、>必须写成&<> |
| 多个根元素 | <a/><b/> | 文档只能有一个顶层根元素 |
| 命名空间未声明 | <soap:Body> 无 xmlns:soap | 使用前缀前必须先声明对应命名空间 |
常见问题
格式化后XML声明会变成两行吗?
不会。本工具会把XML声明(<?xml version="1.0"?>)、注释、DOCTYPE单独成行输出,标签内容按层级缩进,声明始终保持在第一行。如果声明前出现了空行或BOM字符,部分严格的解析器会报错,建议粘贴前先去掉。
CDATA里的内容会被格式化破坏吗?
不会。CDATA(<![CDATA[...]]>)中的内容是纯文本,格式化时原样保留,不做缩进和转义处理,其中的换行、空格都会与输入保持一致。
校验通过但接口仍报错是什么原因?
语法校验只能保证XML结构合法,接口报错常见原因还有:缺少命名空间声明、必填字段缺失、字段顺序不符合XSD约束、编码声明与实际编码不一致等。建议对照接口文档的Schema(XSD/WSDL)逐项核对。