小编典典

使用JSONP加载html页面

ajax

我正在尝试使用加载外部页面JSONP,但是该页面是一个HTML页面,我只想使用ajax来获取其内容。

编辑:之所以这样做,是因为我想在加载页面而不是我的服务器时传递所有用户信息,例如:标头,ip,代理。

这可行吗?现在,我可以获取页面,但是jsonp尝试解析json,并返回错误:Uncaught SyntaxError: Unexpected token <

样例代码:

$.post('http://example.com',function(data){
    $('.results').html(data);
},'jsonp');

我已经建立了一个jsfiddle供人们测试:http :
//jsfiddle.net/8A63A/1/


阅读 650

收藏
2020-07-26

共1个答案

小编典典

http://en.wikipedia.org/wiki/JSONP#Script_element_injection

进行JSONP调用(换句话说,使用此使用模式)需要一个script元素。因此,对于每个新的JSONP请求,浏览器必须向HTML
DOM中添加(或重用)新元素(换句话说,将元素注入),并带有“ src”属性所需的值。然后评估此元素,检索src URL,并评估响应JSON。

现在查看您的错误:

未捕获到的SyntaxError:意外令牌<

<是任何html标记的第一个字符<DOCTYPE,在这种情况下,可能是的开始,这 当然 是无效的JavaScript。

NO ,你不能使用JSONP用于读取HTML数据。

2020-07-26