Scribe + Xing => OAuth签名无效

时间:2016-01-31 13:56:02

标签: oauth scribe xing

我正在尝试使用XING的抄写员,我总是得到以下答案:

Can't extract token and secret from this: '{"message":"Invalid OAuth signature","error_name":"INVALID_OAUTH_SIGNATURE"}'

我有一个正常工作的登录流程,取回oauth_tokenoauth_verifier并尝试更改默认选择的HMACSha1 Singature,其中包含PlainText签名,但我总会得到上面提到的结果......

关于为什么会发生这种情况的任何想法?

使用来自scribe的默认DefaultApi10aXingApi始终在上述步骤中失败...

编辑 - 代码

// Creating the service
// callback is needed to stop redirecting in the webview
OAuthService service = new ServiceBuilder()
            .provider(XingApi.class)
            .apiKey(apiKey)
            .apiSecret(apiSecret)
            .callback("http://www.xing.com")
            .build();

第1步:获取请求令牌+ auth url

RequestToken requestToken = service.getRequestToken();
String authUrl = service.getAuthorizationUrl(requestToken );

第2步:在webview中加载auth url +检查重定向网址并根据回调取消重定向

例如,重定向网址如下所示:http://www.xing.com?oauth_token=a2191ab84c9e0f85cf0c&oauth_verifier=4978

第3步:从返回的网址中提取oauth_token + oauth_verifier

String oauthToken = ...; // a2191ab84c9e0f85cf0c in the example
String oauthVerifier = ...; // 4978 in the example

第4步:获取访问令牌=>

Token requestToken = new Token(oauthToken, oauthVerifier); // reusing the request token from above results in invalid request token answer from xing!
Verifier v = new Verifier(oauthVerifier);
Token accessToken = service.getAccessToken(requestToken, v);

1 个答案:

答案 0 :(得分:1)

卸下:

public string Totalheure { get; set; }

从第4步开始。

您必须保留请求令牌以使用它来检索访问令牌和来自Xing的验证者(4位数PIN)。

编辑 - 已添加代码:

Token requestToken = new Token(oauthToken, oauthVerifier); // reusing the request token from above results in invalid request token answer from xing!