ZainNabi Ответов: 2

Потребляйте сервис REST в MVC


Мой базовый класс:

public class GlobalVariables
   {
       public static HttpClient client = new HttpClient();

       public GlobalVariables()
       {
           client.BaseAddress = new Uri("http://localhost:8080");
           client.DefaultRequestHeaders.Clear();
           client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/xml"));
       }
   }


мой контроллер:

[HttpGet]
        public ActionResult GetById()
        {
            IEnumerable<StudentViewModel> list;
            HttpResponseMessage response = GlobalVariables.client.GetAsync("/System_Users").Result;
            list = response.Content.ReadAsAsync<IEnumerable<StudentViewModel>>().Result;
            return View(list);
        }



Я получаю следующую ошибку:
System.InvalidOperationException: 'An invalid request URI was provided. The request URI must either be an absolute URI or BaseAddress must be set.'


Что я уже пробовал:

Я попытался добавить знак @ я также попытался добавить полный url-адрес как в моем базовом классе, так и в контроллерах

2 Ответов

Рейтинг:
1

RickZeeland

Смотрите статью здесь, она также показывает некоторые альтернативы использованию HttpClient:
Несколько отличных способов использования RESTful API в C# - Code Maze[^]


Рейтинг:
0

ZainNabi

Он все еще не работает и я получаю ту же ошибку

F-ES Sitecore

Поэтому погуглите сообщение об ошибке и просмотрите результаты поиска, пока не найдете ответ на свой вопрос.

MadMyche

Какое решение вы пробовали?