Javascript 通过ajax在本地主机上脱机运行W3C验证程序

Javascript 通过ajax在本地主机上脱机运行W3C验证程序,javascript,w3c,w3c-validation,adobe-brackets,Javascript,W3c,W3c Validation,Adobe Brackets,我使用编程括号文本编辑器,我已经安装了W3C验证器,但它可以在我在线时工作,但在离线时不能。我尝试安装并运行到localhost:8888,但括号的扩展仅通过ajax(javascript)连接。是否可以将ajax发送到原始W3C网站 这里是W3C HTML检查器(验证器)的维护者。是的,可以向当前检查器的本地实例发送ajax请求。要使用此操作并返回JSON格式的结果,请执行以下操作: var checkerUrl=”http://localhost:8888/?out=json" 获取(doc

我使用编程括号文本编辑器,我已经安装了W3C验证器,但它可以在我在线时工作,但在离线时不能。我尝试安装并运行到localhost:8888,但括号的扩展仅通过ajax(javascript)连接。是否可以将ajax发送到原始W3C网站

这里是W3C HTML检查器(验证器)的维护者。是的,可以向当前检查器的本地实例发送ajax请求。要使用此操作并返回JSON格式的结果,请执行以下操作:

var checkerUrl=”http://localhost:8888/?out=json"
获取(document.location.href)
.then(函数(currentDoc){return currentDoc.text();})
.then(函数(htmlSource){
取回(
Checkerull{
方法:“张贴”,
模式:“cors”,
正文:htmlSource,
标题:新标题({“内容类型”:“text/html;charset=utf-8”})
})
.then(函数(checkerResponse){return checkerResponse.json();})
.then(函数(jsonOutput){
console.dir(jsonOutput.messages);
})
});
这显示了按照检查者期望的方式交付请求所需遵循的基本步骤:

  • 将文档作为邮件正文(在本例中为当前文档)发送给检查器
  • 告诉检查者将其结果格式化为JSON(
    out=JSON
  • 制作
    text/html;charset=utf-8
    发送给检查器的邮件正文的媒体类型
检查器还支持
multipart/form data
为其提供要检查的HTML源代码,但将源代码作为帖子正文提供是首选(也是更好的)方法

如果您不想使用
fetch()
而想使用JQuery
$.ajax(…)
,下面是一个示例:

var checkerUrl=”http://localhost:8888/?out=json"
$.get(document.location.href,
函数(htmlSource)
{
$.ajax({
url:checkerUrl,
类型:“POST”,
跨域:是的,
数据来源:htmlSource,
contentType:“text/html;charset=utf-8”,
数据类型:“json”,
成功:函数(jsonOutput){
console.dir(jsonOutput.messages);
}
});
});
如果您不想使用
fetch()
或JQuery
$.ajax(…)
而想使用老式的XHR,但不清楚在这种情况下如何处理细节,请告诉我,我也可以发布一个例子

在所有情况下,
.messages
JSON输出都是一个对象数组,每个对象包含如下内容:

firstColumn: 1
lastColumn: 6
lastLine: 4
message: "Unclosed element “span”."
type: "error"
提供检查器发出的JSON的更多详细信息