【发布时间】:2019-01-06 03:19:16
【问题描述】:
我有一个Spring Boot项目,需要通过Twitter实现授权。
还有什么比这更简单的呢? - 我问自己,然后我被困了几天。
问题是我尝试过的大多数库(监听 /connect/twitter 或 /signin/twitter)都返回相同的响应
Invalid cookie header: "set-cookie: personalization_id=""; Expires=Tue, 28 Jul 2020 20:04:39 GMT; Path=/; Domain=.twitter.com". Invalid 'expires' attribute: Tue, 28 Jul 2020 20:04:39 GMT
我的注意力被这句话吸引了:
Invalid 'expires' attribute
这可以通过配置RestTemplate来解决,但问题是它在配置中深度创建,被私有final字段隐藏。 我认为应该有一个比玩反射 API 更好的决定,我只是不明白
也许有人可以通过 Twitter 推荐正确的授权方式。
测试版本:
- Spring Boot 版本从 1.5.14 到 2.0.3
- org.springframework.social:spring-social-twitter 从 1.1.2 到 2.0.0.M4
- spring-boot-starter-social-twitter 最高 2.0.0.M4
附: Facebook 与 spring-security-oauth2-jose 和 spring-security-oauth2-client 完美配合,但 twitter 没有配置为它的提供者
必须为客户端注册“twitter”指定提供者 ID
【问题讨论】:
标签: spring-boot twitter-oauth spring-social spring-oauth2 spring-social-twitter