如何从不同的应用程序远程调用Grails Web服务

时间:2013-04-08 10:02:36

标签: jquery web-services rest grails getjson

我的Grails应用程序中有一个Web服务方法,它以json格式呈现数据。

def getCityListJson(){
    def cityList= City.list() as JSON
    render cityList
}

基本上是一个控制器动作。

现在我想从我的PHP应用程序中调用此方法

我在使用Jquery

的php页面中尝试过
   <script type="text/javascript">
      $(function(){
         $("#geCity").click(function(){
             $.getJSON('http://localhost:8080/city/getCityListJson',               
             function(data) {
                console.log(data)
              });
         });
     });
  </script>

但没有得到任何回复..

我是Web服务概念的新手。调用Web服务的正确方法是什么?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

在成功回调中,您尝试记录未声明的json

您已将参数命名为data。改变它,它应该工作:

<script type="text/javascript">
    $(function(){
        $("#geCity").click(function(){
            $.getJSON('http://localhost:8080/city/getCityListJson',               
                function(data) {
                    console.log(data)
            });
        });
    });
</script>

如果这不记录任何内容,请检查您与使用firebug或类似内容的Web服务的通信。因此,您可以检查请求是否正确发送以及服务器是否按预期发送(JSON)响应。