【发布时间】:2018-11-08 04:50:25
【问题描述】:
我对 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 类型的路由,然后放了类似的东西:
{
j_username: username,
j_password: password
}
以及headers参数:
'User-Agent' = 'Mozilla/5.0 Ubuntu/8.10 Firefox/3.0.4'
'Content-type' = 'Application/json'
但它总是在正文中返回我的登录表单,有人知道如何安装这个测试吗?
更新
实际上在其他项目中,我遵循参考并且效果很好。但是我开发了 grails 响应部分,没有留下api/login 路由,并且我相信登录是通过相同的 web 路由 /login/auth 完成的,但是我无法通过邮递员验证测试,而是在 web 徽标上完美。
更新 2
我相信在收到我的登录请求的项目中,为了方便起见,他们已经通过同一个web访问了api,并且这个请求被挂载在集成中,不要发出json类型的请求,因为“发送 URLENC”,有人可以向我解释一下如何在邮递员中拨打这个电话吗?
【问题讨论】:
-
您应该为此使用
x-www-form-urlencoded选项。以j_username和j_password作为字段名
标签: rest http post grails postman