ASP.NET Основной веб-API неподдерживаемого типа носителя

#c# #asp.net #api

#c# #asp.net #API

Вопрос:

Привет, я пытаюсь создать свой первый API-интерфейс ASP.net Ядро и следовали этому руководству: https://learn.microsoft.com/en-us/aspnet/core/tutorials/first-web-api?view=aspnetcore-3.1amp;tabs=visual-studio

Я хотел бы узнать, почему я не могу ничего опубликовать в своей базе данных (которую я настроил на предыдущих шагах)

Я использую песни вместо задач, и когда я пытаюсь отправить запрос POST в postman, я получаю этот ответ

 {
    "type": "https://tools.ietf.org/html/rfc7231#section-6.5.13",
    "title": "Unsupported Media Type",
    "status": 415,
    "traceId": "|25aa76f-4966fce03006b505."
}
  

Не имеет значения, какие пары ключ: значение я отправляю в свой API, при использовании метода post я всегда получаю один и тот же ответ.

мой класс песни выглядит так:

     public class Song
    {
        public int Id { get; set; }

        public string Title { get; set; }

        public string Artist { get; set; }

        [DataType(DataType.Date)]
        public DateTime ReleaseDate { get; set; }

        public string Spotify { get; set; }

        public string Youtube { get; set; }

        public string Instagram { get; set; }
    }
  

Это ссылка на точный шаг, на котором я нахожусь:
https://learn.microsoft.com/en-us/aspnet/core/tutorials/first-web-api?view=aspnetcore-3.1amp;tabs=visual-studio#test-posttodoitem-with-postman

ps. Я все еще новичок, когда дело доходит до программирования, и, вероятно, это будет что-то супер очевидное.

Комментарии:

1. Ошибка предполагает, что вы, возможно, забыли » Установить тип в JSON (application / json)»..

2. @KirkLarkin спасибо, теперь мне удалось это исправить

Ответ №1:

В основном тексте запроса вы отправляете недопустимый JSON. вы не задаете тип содержимого прямо в заголовке.

Чтобы решить эту проблему в POSTMAN, щелкните в тексте и выберите опцию JSON из выпадающего списка. Затем добавьте открытые и закрытые фигурные скобки. Так что вы получите код HTTP 400. Отправьте свой объект, как следующий фрагмент.

{
"FirstName":"Tom",
 "Фамилия": "Андерсон",
"Адрес": "Бостон"
}

Для получения подробной информации нажмите здесь

Ответ №2:

Да, это было так, внутри postman мне пришлось изменить заголовок с text / plain на application / json!

спасибо за ваше предложение!