我正在编写一个Web应用程序,并且已经实现了用户可以使用spring-social-(core / twitter)通过Twitter登录.
然而,Twitter表现得很奇怪.在初始身份验证/授权之后,每次我将用户发送到Twitter进行身份验证时,Twitter都会提示再次授权我的应用程序.我查看了连接的Twitter个人资料.我的应用程序在那里并且正确授权(在我的情况下是读访问权限).
我没有请求其他权限的情况.我的所有应用程序需求都是读访问权限(授权对话框确认了这一点).
我正在使用OAuth1Operations(由TwitterConnectionFactory返回)来执行OAuth舞蹈并将结果连接保存在数据库中.我的前端是用Wicket 1.5编写的.
当我想通过Twitter登录时,我可以一次又一次地重新授权我的应用程序来解决这个问题,但这是一个很大的麻烦.谁知道我在这里缺少什么?
这是我的代码:
TwitterConnectionFactory connectionFactory = (TwitterConnectionFactory) connectionFactoryLocator.getConnectionFactory(Twitter.class);
String callbackUrl = [...];
if (pageParameters.get("oauth_token").isNull() || pageParameters.get("oauth_verifier").isNull()) {
MultiValueMap params = new LinkedMultiValueMap();
params.add("x_auth_access_type", "read");
OAuthToken token = connectionFa