我可以XMLHTTPRequest();纯HTML(不含XML)

Can I XMLHTTPRequest(); plain HTML (without XML)

本文关键字:不含 XML HTML XMLHTTPRequest 我可以      更新时间:2023-09-26

我正在写一个google chrome扩展,我需要规避同源策略:

var xhr = new XMLHttpRequest();
xhr.open("GET", "my url", true);

然而,"我的url"是一个HTML页面的url(更具体地说是一个JavaScript模板),我从我的控制台得到一个"未捕获的SyntaxError: Unexpected token <"。

我如何接受这个XML使用谷歌chrome扩展xhr GET方法(我不能使用。ajax由于同源策略和调用它JSONP不允许HTML解析)?

您需要使用jsonp来获取数据。要解析它,不确定你打算如何解析html,但它会更容易,如果html也正确格式化,你可以创建一个代理,将返回一个格式良好的html或xml。在代理中,您可以使用tidyhtml,它可以接受格式糟糕的html并输出xml或xhtml格式的html数据。否则你会做很多字符串操作。无论哪种方式,您都应该通过json获取数据。你可以把它加载到网页的一些html元素,并通过jquery操作它。使用json加载HTML的问题是,在能够通过回调函数传递它之前,您需要转义几个HTML字符。