我正在编写谷歌浏览器扩展程序,我需要规避相同的原始政策:
var xhr = new XMLHttpRequest();
xhr.open("GET", "my url", true);
但是,“我的网址”是HTML网页的网址(更具体地说是JavaScript模板),我收到的是“未捕获的SyntaxError:意外的令牌<”从我的控制台。
如何使用GET的google chrome扩展xhr方法接受此XML(由于相同的原始策略并且调用JSONP不允许HTML解析,我不能使用.ajax)?
答案 0 :(得分:0)
您需要使用jsonp来获取数据。要解析它,不确定你打算如何解析html,但是如果html格式正确也会更容易,你可以创建一个返回格式良好的html或xml的代理。在代理中你可以使用tidyhtml,它可以采用格式错误的html并输出html的xml或xhtml格式的数据。否则你会做很多字符串操作。无论哪种方式,您应该通过jsonp获取数据。您可以将其加载到网页的某个html元素中并通过jquery进行操作。 使用jsonp加载html的问题是你需要在能够通过回调函数传递它之前转义几个html字符。