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

时间:2011-10-22 21:18:49

标签: javascript google-chrome-extension

我正在编写谷歌浏览器扩展程序,我需要规避相同的原始政策:

var xhr = new XMLHttpRequest();

xhr.open("GET", "my url", true);

但是,“我的网址”是HTML网页的网址(更具体地说是JavaScript模板),我收到的是“未捕获的SyntaxError:意外的令牌<”从我的控制台。

如何使用GET的google chrome扩展xhr方法接受此XML(由于相同的原始策略并且调用JSONP不允许HTML解析,我不能使用.ajax)?

1 个答案:

答案 0 :(得分:0)

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