登录一次与客户一次到REST远程应用
问题描述:
我开发一个REST客户端(一个),讨论的另一个基于REST的应用程序(乙)。登录一次与客户一次到REST远程应用
现在乙是一个安全的应用程序,并已登录网址。当我使用RestTemplate时,我没有得到任何回应,但标题。但之后,如果我问任何其他资源使用RestTemplate到应用程序B它说未经授权。
下面的图像显示了头。我如何登录一次然后使用这个头文件与应用程序B使用RestTemplate进行通话。 谢谢
我也没有任何登录代码为我的休息客户端应用程序一个。因为它完全取决于应用程序B。所以我不会有任何本地用户数据库的应用程序A。
答
Request: POST /login username=user&password=password
Response: 302 Set-Cookie: JSESSIONID=xxxxxxx
Request: GET /protected-endpoint Cookie: JSESSIONID=xxxxxxx
Response: 200 Stuff...
成功POST
请求/login
端点应返回JSESSIONID
的Cookie。这是您需要在后续请求中传递的内容,因为这是您的会话令牌。
根据您的安全配置,你可能需要做一些修改,但是这是它的要点。
+0
感谢您的回复!你能举一个例子代码如何在RestTemplate中设置cookie吗? – Sam
您是否向B的登录端点提供POST请求提供用户名和密码? –
是的登录电话是发布。之后,我想打电话GET或POST,但不知道如何处理这些标头。 – Sam