假设我有一个Web服务http://www.example.com/webservice.pl?q=google,它返回文本"google.com".我需要从带有参数(q = google)的JavaScript模块调用此Web服务(http://www.example.com/webservice.pl),然后使用返回值("google.com")进一步执行此操作处理.
最简单的方法是什么?我是一个完整的JavaScript新手,所以任何帮助都非常感谢.
编辑:
自从我回答这个问题已经十年了,我们现在支持CORS形式的跨域XHR .
对于任何现代应用程序,请考虑使用fetch来发出请求.如果您需要支持旧版浏览器,可以添加polyfill.
原始答案:
请注意,您无法跨域提出请求.例如,如果您的网页位于yourexample.com,并且网络服务位于myexample.com上,则您无法直接向其发出请求.
如果您确实需要提出这样的请求,那么您需要在服务器上设置代理.您将向该代理页面发出请求,它将从Web服务检索数据并将其返回到您的页面.
看看那里的众多JavaScript库之一.我个人推荐jQuery.除了他们可以做的所有花哨的UI内容之外,它还有非常好的跨浏览器AJAX库.
$.get( "http://xyz.com/webservice.pl", { q : "google" }, function(data) { alert(data); // "google.com" } );