我使用适用于Xamarin Android的Windows Azure移动服务来验证Google用户并获取身份验证令牌
while(_currentUser == null){
_currentUser = await _mobileClient.LoginAsync(context,
MobileServiceAuthenticationProvider.Google);
}
var authToken = _currentUser.MobileServiceAuthenticationToken;
var url = "https://www.googleapis.com/oauth2/v1/userinfo?access_token=" + authToken;
var request = WebRequest.Create (url)
var response = request.GetResponse ();
我收到HTTP 401错误:未经授权。 我想使用此身份验证令牌获取用户信息。从Azure移动服务返回的身份验证令牌是否不适合此目的?任何想法将不胜感激。
感谢。
答案 0 :(得分:2)
LoginAsync
返回的令牌是 Azure移动服务令牌,而不是Google令牌。如果您希望获取访问令牌以便能够与Google API通信,您实际上需要转到服务器端并通过传递给脚本的user object检索此时的信息。
http://blogs.msdn.com/b/carlosfigueira/archive/2012/10/25/getting-user-information-on-azure-mobile-services.aspx上的帖子提供了有关如何获取该访问令牌的更多信息。