支持DOM解析和跨站点ajax的应用程序框架
我想做一个应用程序,可以得到不同的网站和提取数据从他们的DOM。我打算在GoogleWebToolkit中使用XMLHttpRequest来实现它。然而,XMLHttpRequest似乎不起作用,因为同源策略支持DOM解析和跨站点ajax的应用程序框架,ajax,web-applications,dom,gwt,web-frameworks,Ajax,Web Applications,Dom,Gwt,Web Frameworks,我想做一个应用程序,可以得到不同的网站和提取数据从他们的DOM。我打算在GoogleWebToolkit中使用XMLHttpRequest来实现它。然而,XMLHttpRequest似乎不起作用,因为同源策略 我想知道是否还有其他应用程序框架支持DOM解析和类似于Ajax的跨站点功能?jquery和所有类似dojo的应用程序框架,YUI通过黑客技术支持跨浏览器请求 由于同源策略,您无法向其他域发出ajax请求,因此发出此类请求是一种常用的攻击 演示来描述功能 Site-1的脚本 function
我想知道是否还有其他应用程序框架支持DOM解析和类似于Ajax的跨站点功能?jquery和所有类似dojo的应用程序框架,YUI通过黑客技术支持跨浏览器请求 由于同源策略,您无法向其他域发出ajax请求,因此发出此类请求是一种常用的攻击 演示来描述功能 Site-1的脚本
function MakeThirdPartyRequest()
{
//make sure this domain returns pure json
var Url="http://SomeOtherDomain.com";
//now using javascript you add this TAG to body of html
<script src="Url" type="text/javascript"></script>
}
function jsonFromThirdParty(data)
{
alert(data);
}
您可以使用一些第三方javascript库
下面是发出跨域ajax请求的代码
jQuery.ajax({
url:'http://some_domain',
dataType:'jsonp',
type:'get',
success:function(data)
{
alert(data);
}
});
您只能从其他域下载JSON数据。由于安全原因,无法访问HTML或XML DOM。在这种情况下,我看到两种选择: 您将向页面源服务器发出请求,该服务器将代理请求到实际的web服务器,从而绕过安全限制 您可以使用一些服务将HTML或XML转换为JSON。我知道这样做,但您需要首先在页面中手动定义记录,这样它将只适用于预定义的页面集,而不是用户正在输入的URL。但是可能有XML到JSON的转换器可以转换任何给定的URL。这不难做到
jQuery.ajax({
url:'http://some_domain',
dataType:'jsonp',
type:'get',
success:function(data)
{
alert(data);
}
});