Поскольку вы используете Slim в качестве основы для своего API, самый простой способ - просто построить маршрут GET с определенными желаемыми параметрами URL:
$app->get('/users/filter/{param1}/{param2}/{param3}', function (Request $request, Response $response) {
// Route actions here
});
В своей документации обязательно сообщитепотребители этого API - это конечная точка GET, поэтому не следует создавать тело POST;скорее, параметры, которые вы наметили в URL, должны использоваться для передачи данных клиента в API.
Если вы намереваетесь использовать POST-маршрут только с параметрами URL, то вы также можете вызвать ответназад, если маршрут обнаруживает входящее тело POST:
$app->post('/users/filter/{param1}/{param2}/{param3}', function (Request $request, Response $response) {
$postBody = $request->getParsedBody();
if (is_array($postBody)) {
$denyMsg = "This endpoint does not accept POST body as a means to transmit data; please refer to the API documentation for proper usage.";
$denyResponse = $response->withJson($denyMsg, $status = null, $encodingOptions = 0);
return $profileData;
}
});