我需要创建一个函数,用于向公共URL发出GET请求,并返回一段纯文本。
根据这个返回值,我需要进行验证。
我尝试使用Dojo的ajax get方法来实现,但由于是不同的域,它将无法工作(仅在Internet Explorer中有效)。
我该如何调用外部域并处理其响应?
URL将类似于以下内容:
http://my.socket:8080/?option1=1&option2=2
这可以使用ajax或仅使用Java类。
我需要创建一个函数,用于向公共URL发出GET请求,并返回一段纯文本。
根据这个返回值,我需要进行验证。
我尝试使用Dojo的ajax get方法来实现,但由于是不同的域,它将无法工作(仅在Internet Explorer中有效)。
我该如何调用外部域并处理其响应?
URL将类似于以下内容:
http://my.socket:8080/?option1=1&option2=2
这可以使用ajax或仅使用Java类。
ajax在客户端工作,这意味着您无法进行外部域的ajax调用,因为存在同源策略
如果将GET调用写在应用程序服务器端,并通过ajax调用您的应用程序作为网关,从远程服务器获取数据,则这将是一种不错的技术。
var url = 'http://my.socket:8080/?option1=1&option2=2'; // website you want to scrape
var yql = 'http://query.yahooapis.com/v1/public/yql?q=' + encodeURIComponent('select * from html where url="' + url + '"') + '&format=json&callback=?';
$.getJSON(yql,function(data){
if(data.query.results){
var result = data.query.results.double.content.replace(/<script[^>]*>[\s\S]*?<\/script>/gi, '');
alert(result);
}
});
select * from xml....
,而不是 select * from html....
- Jashwant