我正在嘗試Google OAuth.I正在開發在IBM WebSphere Server上運行的Web應用程序。應用程序的框架是SpringMVC。OAuth:發送訪問令牌並獲取用戶數據
我想獲取userinfo.profile。我有成功獲取訪問令牌,並找不到使用此令牌並獲取用戶信息的方法。
我的瀏覽器重定向到這個URL https://www.googleapis.com/oauth2/v2/userinfo?access_token="+access.getAccessToken();
但得到錯誤
{
"error": {
"errors": [
{
"domain": "global",
"reason": "authError",
"message": "Invalid Credentials",
"locationType": "header",
"location": "Authorization"
}
],
"code": 401,
"message": "Invalid Credentials"
}
}
我使用這個訪問令牌罰款或者我應該送一些其他形式的要求嗎?
我送這樣的請求:
GenericUrl shortenEndpoint = new GenericUrl("https://www.googleapis.com/oauth2/v2/userinfo");
HttpRequest request1 = rf.buildGetRequest(shortenEndpoint);
GoogleHeaders headers = new GoogleHeaders();
headers.setContentType("application/json; charset=UTF-8");
headers.setAuthorization("OAuth " + accessToken);
request1.setHeaders(headers);
HttpResponse shortUrl = request1.execute();
給我的訪問令牌在這個網址在瀏覽器
https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=******
我拿到後
{
"issued_to": "*****************",
"audience": "*****************",
"scope": "https://www.googleapis.com/auth/urlshortener",
"expires_in": 3515,
"access_type": "online"
}
如果使用Authorization標頭髮送令牌,它也會失敗嗎? – jphuynh
我沒有嘗試過。你能告訴我任何發送這個頭的例子嗎? –
你能詳細說明你是如何發送http請求的嗎? – jphuynh