我正在进行需要身份验证的集成测试。 会话状态(即cookie)似乎不在请求之间维护。 有没有CookieManager或类似的东西?
@Test
public void whenAuthenticatedUserRequestAForbiddenUrlShouldObtain403() {
def client = new RESTClient('http://127.0.0.1:8080/app/')
def login = client .post(
path: 'api/login.json',
body: [j_username: 'user', j_password: 'test'],
requestContentType: ContentType.URLENC)
def resp = client .get(path: 'forbidden-url')
assert (resp.status == 403)
==> FAILS status = 200
}
答案 0 :(得分:0)
在我看来,问题不是丢失会话状态,而是首先可能不会将'forbidden-url'指定为安全。如果是,即使您登录,似乎客户端请求请求也不会成功。尝试删除顶部的登录信息,如果仍然获得200,则可能无法保证URL安全。