Rest 制作邮递员测试-Grails

Rest 制作邮递员测试-Grails,rest,http,post,grails,postman,Rest,Http,Post,Grails,Postman,我对grails集成进行了以下测试: def http = new HTTPBuilder(loginUrl) http.request( POST, TEXT ) { headers.'User-Agent' = 'Mozilla/5.0 Ubuntu/8.10 Firefox/3.0.4' send URLENC, [j_username: username, j_password: password] response.success = { resp, read

我对grails集成进行了以下测试:

def http = new HTTPBuilder(loginUrl)
http.request( POST, TEXT ) {
    headers.'User-Agent' = 'Mozilla/5.0 Ubuntu/8.10 Firefox/3.0.4'
    send URLENC, [j_username: username, j_password: password]

    response.success = { resp, reader ->
        loggedIn = ! reader.text.contains("j_username")
    }
}
我正在尝试在Postman中装载测试,但我不确定是否正确,因为这是
send URLENC,[j_username:username,j_password:password]

我把POST-type放在路线上,然后放一些类似于:

{
    j_username: username,
    j_password: password
}
和标题参数:

'User-Agent' = 'Mozilla/5.0 Ubuntu/8.10 Firefox/3.0.4'
'Content-type' = 'Application/json'
但是它总是在体内返回我的登录表单,有人知道如何装载这个测试吗

更新


事实上,在其他项目中,我遵循参考资料,而且效果很好。然而,我已经开发了grails响应部分,没有留下
api/login
路径,我相信登录是通过相同的web路径
/login/auth
完成的,但是我无法验证postman的测试,而是在web徽标上完美地验证

更新2


我相信,在接收我的登录请求的项目中,为了方便起见,他们已经通过同一个web访问了api,而该集成中装载的请求不会发出json类型的请求,因为“发送URLENC”,有人能给我解释一下如何在postman中拨打这个电话吗?

如果您有默认的Spring Security和Spring Security REST配置,下面是我如何做到的:


我也是这样尝试的。但是您在标题中只添加了“application/json”?是的。您是否按照中的指定配置了过滤器链:实际上,在其他项目中,我遵循了参考,它运行良好。然而,我已经开发了grails响应部分,没有留下api/登录路径,我相信登录是通过相同的web路径/login/auth完成的,但是我不能通过postman验证测试,而是在web徽标上进行验证。Spring Security REST进行REST登录的方式是通过一个特殊的拦截器捕获对/api/登录的调用。它不像web登录表单那样使用LoginController。因此,需要文档中指定的正确配置。因此,当使用/api/login时,它返回我401,但找不到。因此,我尝试通过邮递员登录,就像我使用登录表单一样。对此,您应该使用
x-www-form-urlencoded
选项。使用
j_用户名
j_密码
作为字段名