Использование внешнего Restful Web API с ASP Dot net MVC - PullRequest
0 голосов
/ 10 января 2020

Я делаю простую страницу для загрузки документа. Однако после получения ввода мне нужно вызвать веб-API для получения токена, который затем позволит мне вызвать другой веб-API, который, наконец, продолжит загрузку файла (используя файл И токен). Итак, я хочу знать, как вызвать этот API и получить его ответ, а затем добавить этот ответ (который будет токеном). Я пытаюсь следующий код, он прекрасно работает в консольном приложении, но не работает в веб-приложении. вот мой код

public void GetTokenpost()
{
    ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };
    string url = "mydomain/api/oauth/token";
    HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
    request.Method = "POST";

    string data = "grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&assertion=here jwt token"; // make sure this is URL encoded
    request.ContentType = "application/json";
    using (var streamWriter = new StreamWriter(request.GetRequestStream()))
    {
       streamWriter.Write(data);
       streamWriter.Flush();
       streamWriter.Close();
       var HttpResponse = (HttpWebResponse)request.GetResponse();
       using (var streamRead = new StreamReader(HttpResponse.GetResponseStream()))
         {
            var value1 = streamRead.ReadToEnd();       
            Console.WriteLine("Hello {0}", 
         }
    }
 }

1 Ответ

0 голосов
/ 10 января 2020
using (var client = new HttpClient())  
          {  
              client.BaseAddress = new Uri("http://domain");  

              //Called Member default GET All records  
              //GetAsync to send a GET request   
              // PutAsync to send a PUT request  
              var responseTask = client.GetAsync(string requestUri);  
              responseTask.Wait();  

              //To store result of web api response.   
              var result = responseTask.Result;  

              //If success received   
              if (result.IsSuccessStatusCode)  
              { 
               //your code for performing action
              }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...