POST прохождение модели MVC API - PullRequest
0 голосов
/ 04 октября 2018

Добрый день, ребята, я пытаюсь отправить объект в API.и я получил сообщение об ошибке

[HttpPost]
     public async Task<object> Upsert(int Base, int SubBase,object val)
            {
                using (var client = new HttpClient())
                {

                    client.BaseAddress = new Uri("http://localhost:50442/");
                    client.DefaultRequestHeaders.Clear();
                    HttpResponseMessage response = await client.PostAsJsonAsync("M01_Upsert/" + val, val);
                    response.EnsureSuccessStatusCode();
                    return response.Headers.Location;

                }

            }

, и вот функция API, которую я вызываю

 [HttpPost]
        public void M01_Upsert(object val)
        {
            var data = val;
        }

Как мне вызвать это правильно ?.Я делаю это правильно?Это дает мне ошибку при вызове метода.

1 Ответ

0 голосов
/ 04 октября 2018

Попробуйте удалить [val], который вы добавляете в URL записи.

Поэтому измените следующую строку кода:

HttpResponseMessage response = await client.PostAsJsonAsync("M01_Upsert/" + val, val);

На:

HttpResponseMessage response = await client.PostAsJsonAsync("M01_Upsert", val);

При запросах POST полезная нагрузка не должна быть частью параметров URL.Вы передаете его в качестве параметра методу PostAsJsonAsync.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...