如何从javascript调用Web服务

时间:2008-09-23 01:08:33

标签: javascript web-services

假设我有一个返回文字“google.com”的网络服务http://www.example.com/webservice.pl?q=google。我需要从带有参数(q = google)的JavaScript模块调用此Web服务(http://www.example.com/webservice.pl),然后使用返回值(“google.com”)进行进一步处理。

最简单的方法是什么?我是一个完整的JavaScript新手,所以非常感谢任何帮助。

2 个答案:

答案 0 :(得分:14)

编辑:

自从我回答这个问题已经十年了,我们现在以CORS的形式支持跨域XHR。

对于任何现代应用,请考虑使用fetch发出请求。如果您需要支持旧版浏览器,可以添加polyfill

原始回答:

请注意,您无法跨域提出请求。例如,如果您的网页位于yourexample.com,并且网络服务位于myexample.com,则您无法直接向其发出请求。

如果您确实需要提出这样的请求,那么您需要在服务器上设置代理。您将向该代理页面发出请求,它将从Web服务检索数据并将其返回到您的页面。

答案 1 :(得分:12)

看一下那里的众多JavaScript库之一。我个人推荐jQuery。除了他们可以做的所有花哨的UI内容之外,它还非常好cross-browser AJAX libraries

$.get(
    "http://xyz.com/webservice.pl",
    { q : "google" },
    function(data) {
        alert(data);  // "google.com"
    }
);