示例#1
0
        public TokenRequestResult GetUserToken(string code)
        {
            string url = $"{_eveSettings.SSO.LoginHost}/token";

            HttpContent requestBody = new StringContent(
                JsonConvert.SerializeObject(new { grant_type = "authorization_code", code }),
                Encoding.UTF8,
                "application/json"
                );

            HttpClient client = GetOAuthClient((AuthenticationType.Basic, $"{_eveSettings.SSO.ClientId}:{_eveSettings.SSO.ClientSecret}"));

            HttpResponseMessage response = client.PostAsync(url, requestBody).Result;

            if (response.StatusCode == HttpStatusCode.OK)
            {
                string responseBody = response.Content.ReadAsStringAsync().Result;

                TokenRequestResult result = JsonConvert.DeserializeObject <TokenRequestResult>(responseBody);
                return(result);
            }

            return(null);
        }
示例#2
0
        public CharacterDetails GetCharacterDetailsFromCode(string code)
        {
            TokenRequestResult token = GetUserToken(code);

            return(GetCharacterDetailsFromToken(token.AccessToken));
        }