У меня есть вызов API, для которого мне нужно иметь возможность запускать некоторые проверки и, возможно, возвращать различные коды состояния. Мне не нужны пользовательские представления или что-то еще, мне просто нужно вернуть правильный код. Если пользователь не передал надлежащие учетные данные, мне нужно вернуть статус 401. Если они не отправили поддерживаемый формат запроса, мне нужно вернуть статус 400.
Поскольку это API, все, что я действительно хочу сделать, это установить статус ответа и выйти с простым, глупым сообщением о том, почему запрос не удалось (возможно, с помощью exit
). Достаточно того, чтобы выполнить эту работу, но я не смог заставить ее работать правильно. Я пробовал использовать PHP header()
и Cake $this->header()
(все это в контроллере), но хотя я получаю сообщение о выходе, заголовок показывает статус 200 OK
.
Используя следующий код, я получаю сообщение, но заголовок не установлен. Что мне не хватает?
if( !$this->auth_api() ) {
header( '401 Not Authorized' );
exit( 'Not authorized' );
}