0

我正在 SBT 之上实现自定义 API。我这样做是为了在将连接返回给用户之前操​​纵和转换来自连接的响应。

使用用户名和密码的基本身份验证正在运行。但我似乎不知道如何在发送请求之前将 JSESSIONID 标头添加到 ClientService (ClientService.Args)。

知道如何做到这一点吗?

4

2 回答 2

1

由于 REST 是无状态的,理论上你应该不需要 JSESSIONID cookie,它用于保存登录用户的状态。但是,如果您确实希望添加,您应该按照以下方式进行操作:

在特定的端点类(如 Basic Authentication 的 BasicEndpoint.java )中,查找初始化方法,在这种情况下它将注册一个拦截器 BasicInterceptor 。在 BasicInterceptor 的 process 方法中,您可以添加 cookie

request.setHeader("Cookie", "JESSION 字符串放在这里");

此代码拦截所有传出请求并添加 cookie 标头。

希望这可以帮助。

于 2013-09-19T05:20:11.100 回答
0

当您发出请求时,当您执行 BASICAUTH 时,JSESSIONID cookie 应该已经在响应中。

此外,不保证 JSESSIONID 是 WAS 应用服务器的唯一标识符。

于 2013-09-18T21:19:44.193 回答