Отправьте 2 или более почтовых запросов с параметрами необработанного тела с помощью почтальона

У меня есть метод API ASP.NET Core 2.0:

[HttpPost("api/days")]
GetDays([FromBody] DateTime startTime, [FromBody]DateTime endTime)
{

}

И я попытался отправить запрос Post с помощью Postman, но возникла проблема, параметры всегда имеют значения по умолчанию.

Вот мой запрос на публикацию выглядит так:

Отправьте 2 или более почтовых запросов с параметрами необработанного тела с помощью почтальона

Результат: не сработало; Оба параметра в методе API получают значения по умолчанию.

Если я изменю свои параметры API на:

[HttpPost("api/days")]
GetDays([FromBody] Inputparam param)
{

}

public class Inputparam
{
    public DateTime startTime { get; set; }
    public DateTime endTime { get; set; }
}

Это отлично сработало!

Но я хочу отправлять параметры напрямую, а не внутри объекта-оболочки.

Итак, я вернулся с первым методом API, а затем попробовал:

Отправьте 2 или более почтовых запросов с параметрами необработанного тела с помощью почтальона

Результат: не сработало; Оба параметра в методе API получают значения по умолчанию.

И этот:

Отправьте 2 или более почтовых запросов с параметрами необработанного тела с помощью почтальона

Результат: не работает идеально; Просто установите его первый параметр (startTime), а второй параметр все еще имеет значение по умолчанию.

И этот:

Отправьте 2 или более почтовых запросов с параметрами необработанного тела с помощью почтальона

Результат: не сработало; Оба параметра в методе API получают значения по умолчанию.

Я также пробовал [FromForm] вместо [FromBody] в API, ничего не изменилось.

Если я не использую [FromBody] в api и отправляю запрос через x-www-form-urlencoded, все работает отлично.

Но мне нужно отправить необработанное тело с помощью JSon.

Как я мог отправить 2 разных параметра в виде необработанного тела json?

Любая идея? В чем проблема?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
2
0
9 088
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Я обнаружил, что это всего лишь один [FromBody]разрешено в API, и это имеет смысл. Так что, вероятно, ответ таков: невозможно иметь 2 или более параметров с атрибутом [FromBody].

[FromUri] может выполнить задание. Для справки: Документация Microsoft

public class DateTimes
{
public datetime startdate { get; set; } 
public datetime enddate { get; set; }
}

GetDays([FromBody] DateTimes _date)
{
  //Controller action
}

URI:

api/values/?startdate=2018-06-01&endate=2018-07-01

Это не пост сырого тела

Saeid 01.06.2018 15:08

Другие вопросы по теме