1

我在控制器类中有简单的方法。

Class TrainingController{

    def getTrainingsJson(){
          def trainingList  = Training.list()
          println "called===="
          //render trainingList as JSON
          render "${params.callback}(${trainingList as JSON})"
    }
}

获取培训列表,在我的 HTML 页面中,我的请求如下

<script type="text/javascript">
        $(function(){

             $.getJSON('http://localhost:8080/training/getTrainingsJson?callback=?',            
              function(data) {
               console.log("success");
               alert(data);
             });

        });
    </script>

该请求仅在登录后提供。如果没有登录,响应将是登录页面 HTML 格式。

请求跨服务器(从 php 到 grails)。我想确保必须建立安全通信,那么如何在grails中使用spring security通过json进行身份验证。

以及如何确保Nobody可以伪造请求并从服务器获得响应。

并且是否需要遵循 REST 或者我可以在现有控制器中编写方法或者我是否需要为此类请求创建单独的控制器/服务。

4

1 回答 1

1

如果所有访问都是通过浏览器进行的,那么 spring 身份验证将处理它 - 只需相应地保护 url。所有请求(包括ajax)都将通过spring auth

为防止窥探,请考虑实施 SSL

Spring Security 插件文档有更多关于保护你的应用程序的信息。特别阅读有关身份验证、IP 地址限制和会话固定预防的信息

于 2013-04-09T08:07:38.123 回答