繁体   English   中英

使用Scribe的2条腿OAuth-Java等同于php

[英]2 legged OAuth using Scribe - java equivalent of php

我正在尝试使用scribe来参考PHP代码在Java中实现2条腿的OAuth。 我相信我已经很接近破解了。 我当前的错误是:

** OAuth-response.getBody:问题:signature_invalid | 建议:> |

response.getCode():200 **

我怀疑这与在签署请求时令牌的形式或缺少消费者对象有关。 在php中,代码为:

$consumer = new OAuthConsumer($consumer_key, $consumer_secret); 

//post transaction to pesapal

$iframe_src = OAuthRequest::from_consumer_and_token($consumer, $token, "GET", $iframelink, $params);
$iframe_src->set_parameter("oauth_callback", $callback_url);
$iframe_src->set_parameter("pesapal_request_data", $post_xml);
**$iframe_src->sign_request($signature_method, $consumer, $token);**   

从最后一行开始,为签署请求,还将使用者作为参数传递。

我的代码如下:

OAuthService service = new ServiceBuilder()
         .provider(something.class)
         .signatureType(SignatureType.QueryString)
         .apiKey(consumer_key)
         .apiSecret(consumer_secret)
         .callback(callback_url)
         .build();

Token token = new Token("", "");

OAuthRequest request = new OAuthRequest(Verb.GET, iframelink);

request.addBodyParameter("pesapal_request_data", post_xml);
request.addOAuthParameter(OAuthConstants.SIGN_METHOD, signature_method);
service.signRequest(token, request);

Response response = request.send();

有人可以告诉我我可能出了什么问题吗? 我知道我已经接近-非常接近....

尝试将$ iframelink = http://www.pesapal.com/api/PostPesapalDirectOrderV4更改为$ iframelink = https://www.pesapal.com/api/PostPesapalDirectOrderV4

从http更改为https时,出现了同样的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM