我尝试在Apache Oltu中使用OAuthClientRequest实现OAuth客户端。 而且它似乎是根据规范发送消息正文中的客户端凭证而不是基本身份validation标头。 我不确定,我可能错过了代码中的一些东西。
码
OAuthClientRequest.tokenLocation("http://localhost:8081/token") .setGrantType(GrantType.CLIENT_CREDENTIALS) .setClientId(clientKey) .setClientSecret(clientSecret) .buildBodyMessage();
请求
POST / token HTTP / 1.1 Content-Type:application / x-www-form-urlencoded Cache-Control:no-cache Pragma:no-cache User-Agent:Java / 1.6.0_29 Host:127.0.0.1:8081 Accept:text / html,image / gif,image / jpeg,*; q = .2, / ; q = .2连接:保持活动内容长度:127
Apache Shiro EhCache初始化exception:另一个未命名的CacheManager已存在于同一个VM中
如何在同一时间使用Apache的mod_rewrite和别名?
htaccess重写到子域
从Excel xls hssf获取Apache POI中的图片位置
client_secret = f921854d-f70b-4180-9fdd-3a55032103cc&grant_type = client_credentials&CLIENT_ID = 3f3b4092-7576-4b26-8135-980db7864c2
Websockets是否正确的技术用于更新客户端的进度条以及如何实现?
试图上传本地更改的HTML文件,Apache只显示最后一个版本
无法获取.htaccess mod_rewrite规则工作 – 404找不到
Apache上的Phlex http访问(Windows)
您可能需要使用buildQueryMessage()更改buildQueryMessage()
OAuth2承载令牌规范定义了三种发送承载访问令牌的方法:
授权请求标题字段
表格编码的身体参数
URI查询参数
方法buildBodyMessage()将创建一个带有Form-Encoded Body Parameter的请求。 您需要使用buildHeaderMessage() ,这也是规范推荐的方法。
最近,我试图找到一个OAuth2 java库来获得“client_credential”类型的accesstoken。 以下是我对Apache Oltu的看法,而且看起来还在起作用。
@Test public void getAccesstokenViaApacheOltuOAuthClient() { try{ OAuthClient client = new OAuthClient(new URLConnectionClient()); OAuthClientRequest request = OAuthClientRequest.tokenLocation(TOKEN_REQUEST_URL) .setGrantType(GrantType.CLIENT_CREDENTIALS) .setClientId(CLIENT_ID) .setClientSecret(CLIENT_SECRET) .setScope(StringUtils.join(TEST_ScopES," ")) //if you have scope .buildBodyMessage(); String token = client.accesstoken(request,"POST",OAuthJSONAccesstokenResponse.class) .getAccesstoken(); System.out.println(token); assertTrue( token != null); } catch (Exception e) { e.printstacktrace(); }
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。