使用 Web 服务验证 XHTML 代码 validator.nu

Validating XHTML code with validator.nu web service

提问人:AFA Med 提问时间:5/15/2016 最后编辑:Ani MenonAFA Med 更新时间:5/15/2016 访问量:812

问:

我正在使用 API validator.nu:

https://github.com/validator/validator/wiki/Service:-Input:-POST-body

我想根据严格或过渡的XHTML文档类型强制验证:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

在文档中,他们要求发送请求标头: 内容类型:text/html;字符集=utf-8

我认为XHTML是一个类似XML的代码?!

发送包含无效标记(如 <br>(不关闭“/”))的内容后,Web 服务不会返回任何错误。我认为这是将代码作为 HTML5 进行处理。

如何验证XHTML文档?

XHTML W3C 验证

评论


答:

0赞 Ani Menon 5/15/2016 #1

按照这个:

  1. 转到 : W3C 标记验证服务
  2. 选择“按 URI 验证”或“文件上传”或“直接输入”。
  3. 然后在“更多选项”中,选择“UTF-8”作为字符编码,选择“XHTML Strict”作为“文档类型”。
  4. 然后单击“检查”。

您将获得 XHTML Strict 输出。

评论

0赞 AFA Med 5/15/2016
我正在以编程方式查询扩张器。
1赞 Quentin 5/15/2016 #2

您的问题分为两部分:

我想根据严格或过渡的XHTML文档类型强制验证

你不能。Validator.nu 不支持基于 DTD 的验证。它是一个 (X)HTML 5 验证器,而不是基于 DTD 的验证器。过时的 W3C 验证器提供了支持 DTD 检查的 API,并且可以使用其他基于 DTD 的 XML 验证器。

不过,您可能应该迁移到 (X)HTML 5。它比 XHTML 1.0 更能反映浏览器实际支持的内容。

在文档中,他们要求发送请求标头: 内容类型:text/html;字符集=utf-8

我认为XHTML是一个类似XML的代码?!

文档确实说这只是一个示例。XHTML 文档(包括 XHTML 5 文档)的 Content-Type 为 。application/xhtml+xml

这应该会触发 XML 解析,因此应该会触发错误。不过,它仍然会根据 HTML 5 规范进行检查,而不是 XHTML DTD。<br>

评论

0赞 AFA Med 5/15/2016
它起作用了,但我也收到了一个意外的错误“Bad value ”Content-Type“ for the XHTML element ”meta“ for <meta http-equiv=”Content-Type“ content=”text/html;字符集=UTF-8“ />
0赞 Quentin 5/15/2016
@Simohammedhttc — 为什么会出乎意料?您已经对文档的内容类型提出了两个声明,但它们不匹配。
0赞 AFA Med 5/15/2016
我必须更改http-equiv的值,stackoverflow.com/questions/6320084/...
0赞 Mr Lister 5/16/2016
请注意,迁移到 XHTML5 需要更改很多东西才能使其工作,例如将命名实体引用转换为数字字符引用。