Установить заголовок HTTP-кода в FlightStack Overflow

Я разрабатываю API с микрофреймами FlightPHP, и я не могу установить код ответа HTTP для своих маршрутов.
Я могу установить это и работает отлично:

header('HTTP/1.0 500 Error');

Но я хочу использовать встроенную функцию http_response_code () из PHP. Этот ничего не делает.
Я хочу использовать это, потому что мне не нужно вручную вводить сообщение об ошибке.

1

Решение

Чтобы вернуть код ответа HTTP с помощью Flight, вы можете сделать это следующим образом:

Flight::route('GET /', function(){
Flight::json($data, $code = 500);
});

куда $data переменная, которая приводит к массиву, который вы хотите отправить в json.
Если $code не установлен, то по умолчанию возвращается HTTP-код ответа «200».
https://github.com/mikecao/flight/blob/e25f023d4377a2b99b4be8bf7977f3fc0f8089c8/flight/Engine.php#L500

2

Другие решения

У меня была похожая проблема, чтобы отправить свои собственные заголовки, я делаю так:

$code = 404;
Flight->before('stop', function(&$params) use ($code) {
$params[0] = $code;
});
0

По вопросам рекламы [email protected]