我在控制器类中有简单的方法。
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)。 我想确保必须建立安全通信,那么如何进行身份验证 通过json使用grails中的spring security。
如何确保没有人能够伪造请求并从服务器获得响应。
并且需要遵循REST或者我可以在现有控制器中编写方法吗?或者我是否需要为此类请求创建单独的控制器/服务。
答案 0 :(得分:1)
如果所有访问都是通过浏览器进行的,那么Spring身份验证将负责处理 - 只需相应地保护URL。所有请求(包括ajax)都将通过spring auth
防止窥探考虑实施SSL
Spring Security插件docs提供了有关保护应用程序的更多信息。特别是关于身份验证,IP地址限制和会话固定预防的阅读