使用刷新令牌的200状态

时间:2017-12-12 09:40:04

标签: c# visual-studio-2015

        public async Task NewMethodAsync()
        {
            try
            {
                HttpClient objClient = new HttpClient();

                Uri requestUri = new Uri("https://approvalbotbeta.azurewebsites.net/api/token");
                Dictionary<string, string> pairs = new Dictionary<string, string>();
                var client_ID = "<CLIENT ID>";
                var client_secret = "<SECRET KEY STRING>";

                pairs.Add("grant_type", "client_credentials");
                pairs.Add("reply_url", "http://localhost");
                FormUrlEncodedContent httpContent = new FormUrlEncodedContent(pairs);
                var encordedString = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(client_ID + ":" + client_secret));

                objClient.DefaultRequestHeaders.Add("Authorization", "Basic " + encordedString);

                HttpResponseMessage respon = await objClient.PostAsync("https://approvalbotbeta.azurewebsites.net/api/token", httpContent);
                if (respon.IsSuccessStatusCode)
                {
                    Console.WriteLine(respon.Content.ReadAsStringAsync().Result);
                    var ww = respon.Content.ReadAsStringAsync().Result;

                    var response = JsonConvert.DeserializeObject<Response>(ww);

                    Console.WriteLine(response.access_token);
                    var acc_tkn = response.access_token;


               //    Uri requesturi = new Uri("https://approvalbotbeta.azurewebsites.net/api/send");


                  //  Dictionary<string, string> pairs2 = new Dictionary<string, string>();

                  //  pairs2.Add("Content-Type", "application/json");

                  //  FormUrlEncodedContent httpContent2 = new FormUrlEncodedContent(pairs2);
                 //   objClient.DefaultRequestHeaders.Add("Authorization", "Bearer",+ acc_tkn);

                }
            }
            catch (Exception ex)
            {

                Console.WriteLine(ex.Message);
            }
        }

我将其编码为获取访问令牌,并获得了它。现在我想使用此令牌和我的URL获得200状态。那么编码线是什么?

1 个答案:

答案 0 :(得分:1)

respon.StatusCode会让你200。

如果您的意思是使用此令牌,则需要从API检索数据,请使用以下命令:

using (var client = new HttpClient())
{
    var url = "https://approvalbotbeta.azurewebsites.net/api/GetSomething";
    client.DefaultRequestHeaders.Add("Authorization", "Bearer " + acc_tkn);
    var response = await client.GetStringAsync(url);
    // Parse JSON/XML response.
}

GetSomething 是您要调用的方法 acc_tkn 您收到了发布的代码。