NetDimension.OpenAuth.Tencent.QQConnectClient.GetAccessTokenByCode C# (CSharp) Method

GetAccessTokenByCode() public method

public GetAccessTokenByCode ( string code ) : void
code string
return void
		public override void GetAccessTokenByCode(string code)
		{

			var response = HttpPost(TOKEN_URL, new
			{
				grant_type = "authorization_code",
				client_id = ClientId,
				client_secret = ClientSecret,
				code = code,
				redirect_uri = CallbackUrl
			});


			if (response.StatusCode != System.Net.HttpStatusCode.OK)
				return;


			var result = response.Content.ReadAsStringAsync().Result;

			var accessToken = string.Empty;

			var pattern = @"access_token=(([\d|a-zA-Z]*))";

			if (Regex.IsMatch(result, pattern))
			{
				accessToken = Regex.Match(result, pattern).Groups[1].Value;
			}

			response = HttpGet(OPEN_API_URL, new Dictionary<string, object>
			{
				{"access_token" , accessToken}
			});

			if (response.StatusCode != System.Net.HttpStatusCode.OK)
				return;

			result = response.Content.ReadAsStringAsync().Result;

			pattern = @"\""openid\"":\""([\d|a-zA-Z]+)\""";

			if (!Regex.IsMatch(result, pattern))
			{
				return;
			}



			AccessToken = accessToken;
			OpenId = Regex.Match(result, pattern).Groups[1].Value;

			isAccessTokenSet = true;

		}