Тестирование конечной точки с примитивной переменной и объектом в качестве параметров метода в Postman - PullRequest
1 голос
/ 08 июля 2019

Я написал конечную точку в C #, которая принимает примитивную переменную и объект.Я хочу протестировать эту конечную точку, передав Id вместе с объектом, который содержит свойства, которые можно использовать для фильтрации запроса и возврата результата, который ищет пользователь.Проблема, с которой я сталкиваюсь, заключается в том, что я не могу понять, как передать одновременно и Id, и объект в Postman, чтобы я мог проверить конечную точку.

Я пытался передать courseId как обычныйПараметр вместе с объектом в теле, но он не работает.Я также пытался передать как в теле, и в то же время поставить [FromBody] перед типом данных courseId, он также не работал.

Есть предложения?

Спасибо.

Вот метод в моем контроллере:

[HttpGet]
public List<CourseDAO> Courses(long? courseId, [FromBody]CourseFilter paramsObject)
{
    //Create an instance of the CourseService class
    CourseService course = new CourseService();

    //Return the result of the GetAllCourses method in the  CourseService class
    return course.Courses(courseId, paramsObject);
}

Внутри объекта есть такие свойства, как Active (bool), Deleted (bool) и т. Д. Эти два свойства, например, используются для определенияпредлагается ли курс / временно не предлагается в случае активного или постоянно не предлагается в случае удаленного.

1 Ответ

1 голос
/ 08 июля 2019

Ваша конечная точка верна по параметру, вы просто используете неправильный HTTP-глагол.

HttpGet позволяет только предоставить строку запроса для метода.

Чтобы опубликовать тело, вам нужно использовать HttpPost:

[HttpPost]
public List<CourseDAO> Courses(long? courseId, [FromBody] CourseFilter paramsObject)
{
   // ...
}

Теперь вы сможете правильно получить доступ к своей конечной точке с помощью Почтальона:

enter image description here

Подробнее о маршрутизации и HTTP-глаголах здесь .

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