Как установить StatusCode на 400 в slim v2, когда ответ MySql не увенчался успехом?Отправить StatusCode 400, когда «Нет записей найдено»
$app->get('/gg/:user/:pass', 'gg');
function gg($user, $pass) {
$sql = "...";
try {
$db = getDB();
$stmt = $db->prepare($sql);
$stmt->bindParam("user", $user);
$stmt->bindParam("pass", $pass);
$stmt->execute();
$gs = $stmt->fetchAll(PDO::FETCH_OBJ);
if ($gs) {
....
} else {
http_response_code(400);
throw new PDOException('No records found.');
}
} catch(PDOException $e) {
echo '{"error":{"text":'. $e->getMessage() .'}}';
}
}
Api возвращает ошибку состояния 200, но он должен измениться до состояния 400, если данные mysql не найдены.
Добро пожаловать к SO. Не работает почти всегда бесполезное выражение здесь. Каков ожидаемый результат и каков фактический результат - два важных вопроса, на которые вы должны ответить, когда спрашиваете. Создайте вопрос [MCV] (http://stackoverflow.com/help/mcve), чтобы получить более качественные ответы. – marekful
http://docs.slimframework.com/response/status/ –
@Url wow, целые ** 'два' ** сообщения на ваш счет и уже вы бросаете свой весомый реп. недовольный! – YvesLeBorg