需要使用oauth发送https GET请求

时间:2014-09-05 13:47:35

标签: java oauth

我是OAuth的新手并尝试发送https GET请求以检索某些内容。之前我使用POSTMAN来测试它,并且我能够使用OAUth 1.0头授权执行GET请求。标题授权看起来像是

Authorization: OAuth oauth_consumer_key="xxxxxxxxxxxxxxxxxxx" ,oauth_signature_method="HMAC-SHA1" ,oauth_timestamp="1409861973" ,oauth_nonce="x1409861973681" ,oauth_version="1.0" ,oauth_signature="M+Dq62XboEd3+t6VDIcLy86zlQg="

查询看起来像是

https://secure.api.abc.net/DataService/data/ServiceAccount?schema=1.0&form=json&byBillingAccountId={EQUALS,yyyyy}

请注意,我可以从POSTMAN执行此操作。

现在,我需要在java中编写代码并且我能够生成oauth签名,但是我想知道如何在https请求中设置授权标头???

请告知我,我是oauth的新手,想要学习。

1 个答案:

答案 0 :(得分:0)

我想如果你在Java中做,你将需要使用Apache HttpClient或类似的东西向服务器发出请求,并将OAuth标头设置为请求。
使用下面的Apache HttpClient编写代码示例。

HttpClient client = HttpClientBuilder.create().build();
HttpGet request = new HttpGet(url);

// add request header
request.addHeader("OAuth", oauthHeaderString);
HttpResponse response = client.execute(request);