// // GET: /OAuth/ public ActionResult Token() { try { var oauthRequest = new TokenRequest(new OAuth2Provider.Request.HttpRequest(Request), MvcApplication.ServiceLocator); var token = oauthRequest.Authorize(); if (token.RedirectsUri.HasValue()) { var redirectUri = OAuthResponse .TokenResponse(token.AccessToken, token.ExpiresIn, token.RefreshToken) .SetLocation(token.RedirectsUri) .BuildQueryMessage().LocationUri; return(Redirect(redirectUri)); } var response = OAuthResponse .TokenResponse(token.AccessToken, token.ExpiresIn, token.RefreshToken) .BuildJsonMessage(); return(this.OAuth(response)); } catch (OAuthException ex) { var response = new ErrorResponseBuilder(ex).BuildJsonMessage(); return(this.OAuth(response)); } }