相关疑难解决方法(0)

RestTemplate客户端与cookie

我正在用Java编写一个简单的客户端,以允许可重用​​使用通过RESTful API访问的专有病毒扫描软件.要上传用于扫描API的文件,需要使用POSTfor Connect,然后使用POSTfor将文件发布到服务器.在对Connect的响应中,POST服务器设置了cookie,后者需要在POST发布文件时使用.我目前正在RestTemplate我的客户端使用Spring .

我的问题是如何访问响应中的cookie以便随后转发回服务器POST?我可以看到它们存在于返回的标题中,但是没有方法ResponseEntity可以访问它们.

java cookies spring http resttemplate

15
推荐指数
5
解决办法
4万
查看次数

即使使用 GET,RestTemplate 也不遵循重定向

所以,

我正在使用 RestTemplate 访问某个页面,这将需要重定向(重定向到 oauth 2 提供程序,但这可能无关紧要)。

我正在做:

ResponseEntity<String> forEntity = oAuth2RestTemplate.getForEntity(url, String.class, Collections.emptyMap());
Run Code Online (Sandbox Code Playgroud)

使用标准OAuth2RestTemplate,我还没有对这个 bean 进行任何自定义创建,所以它只是从 spring 注入的。

作为响应,我得到ResponseEntitylocation标头和 302 状态,但没有遵循。从许多其他来源判断,如果我所做的只是GET- 类似的问题:Follow 302 redirect using Spring restTemplate?

这不是一个案例,没有重定向发生,我错过了什么吗?我是否必须手动抓取它location 并手动重定向到它?

更新:

好的,作为它的 OAuth2RestTemplate,它使用 OAuth2AccessTokenSupport 作为请求工厂。此类将工厂配置为遵循重定向。可惜太难找了。

但是使用也= new RestTemplate()无济于事(注意 new 关键字,如果您要自动装配它,那么 spring 将自动装配 oauth2RestTemplate )。

spring resttemplate spring-oauth2

5
推荐指数
0
解决办法
3733
查看次数

标签 统计

resttemplate ×2

spring ×2

cookies ×1

http ×1

java ×1

spring-oauth2 ×1