#c# #json #asp.net-core #http-post #asp.net-core-webapi
#c# #json #asp.net-core #http-post #asp.net-core-webapi
Вопрос:
Я новичок в веб-api и теперь создаю простую программу с использованием .net 3 В моем контроллере, я создаю простой метод post
[HttpPost]
public ActionResult Post(CountryPostRequest countryPostRequest)
{
var savedCity = new City {Name=countryPostRequest.Capital};
var savedRegion = countryDb.Regions.Add(new Region { Name = countryPostRequest.Region });
var savedCountry = countryDb.Countries.Add(new Countrie { Name = countryPostRequest.Name, Region = new Region { Name = countryPostRequest.Region }, Capital = savedCity, AreaSize = countryPostRequest.AreaSize, CountryCode = countryPostRequest.CountryCode, Population = countryPostRequest.Population });
countryDb.SaveChanges();
return RedirectToAction(nameof(Get));
}
Этот метод получает CountryPostRequest. Это выглядит так
public class CountryPostRequest
{
public string Name { set; get; }
public string CountryCode { set; get; }
public int Population { set; get; }
public double AreaSize { set; get; }
public string Capital { set; get; }
public string Region { set; get; }
}
В целом я пытаюсь опубликовать этот raw с помощью postman
{
"Name" : "Roman Empire",
"CountryCode" : "RE",
"Population" : 22,
"AreaSize": 22.0,
"Capital" : "Rome",
"Region" : "EU"
}
И почтальон выдает мне результат:
{
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.13",
"title": "Unsupported Media Type",
"status": 415,
"traceId": "|db653ff6-46b8be8826b56364."
}
Методы получения работают нормально. Что неверно? Помогите, пожалуйста
Комментарии:
1. Вам нужно установить тип содержимого в postman как
JSON (application/json)
. Перейдите к телу вашего запроса POST, там вы найдете необработанный вариант. Прямо рядом с ним будет выпадающий список, выберите JSON2. Отлично, спасибо @RahulSharma
3. Да——————————-
Ответ №1:
Специально для вашего случая, поскольку вы используете postman
для вызова своего API:
Вам нужно установить тип содержимого в postman как JSON (application / json). Перейдите к телу вашего запроса POST, там вы найдете необработанный вариант. Прямо рядом с ним будет выпадающий список, выберите JSON.