2010-02-05 53 views
0

场景:我有一个使用Acegi安全性进行验证的Grails应用程序。我正在应用程序中实现一个REST服务端点,并希望能够使用shell脚本从服务端点进行GET和POST。使用Acegi安全性的脚本级别登录到Grails应用程序

我一直在尝试使用curl来做到这一点,但无法找到正确的参数组合来使curl命令登录到Grails应用程序;每当我尝试GET或POST时,我总是收到登录页面。

我知道我可以更改Grails应用程序的安全设置来打开特定的服务端点URL,以便它们不需要身份验证,但我宁愿不这样做;任何人都知道如何使用curl进行身份验证,或者使用其他方法?

+0

你看过在acegi插件上使用ajax方法吗? – 2010-02-05 22:41:00

回答

2

您的登录URL将为'/ j_spring_security_check',其中用户名字段'j_username'和密码字段'j_password'。您将需要修改登录控制器的索引方法,以允许您重定向到您的目标URL。就像:

def index = { 
    if (isLoggedIn() && params.redirectUri) 
     redirect(uri: redirectUri, params: params)   
    } 
    ... 
} 
相关问题