Используйте пользовательский код состояния с CakePHP 2.x

Мне нужно использовать пользовательский код состояния для ответа в CakePHP 2.x, например 422,

Тем не менее CakeResponse учебный класс разрешает только те коды состояния, которые уже настроены в классе CakeResponse.

Есть ли способ для меня использовать свой пользовательский код состояния с CakePHP?

Обратите внимание, если ответ заключается в использовании пользовательских CakeResponse учебный класс есть связанный вопрос относительно этого.

0

Решение

Круто, что вы ищете API, но продолжаете читать:

Запросы & устанавливает допустимые коды ответов HTTP & Сообщения.

/**
* Queries & sets valid HTTP response codes & messages.
*
* @param int|array $code If $code is an integer, then the corresponding code/message is
*        returned if it exists, null if it does not exist. If $code is an array, then the
*        keys are used as codes and the values as messages to add to the default HTTP
*        codes. The codes must be integers greater than 99 and less than 1000. Keep in
*        mind that the HTTP specification outlines that status codes begin with a digit
*        between 1 and 5, which defines the class of response the client is to expect.
*        Example:
*
*        httpCodes(404); // returns array(404 => 'Not Found')
*
*        httpCodes(array(
*            381 => 'Unicorn Moved',
*            555 => 'Unexpected Minotaur'
*        )); // sets these new values, and returns true
*
*        httpCodes(array(
*            0 => 'Nothing Here',
*            -1 => 'Reverse Infinity',
*            12345 => 'Universal Password',
*            'Hello' => 'World'
*        )); // throws an exception due to invalid codes
*
*        For more on HTTP status codes see: http://www.w3.org/Protocols/rfc2616/rfc2616-sec6.html#sec6.1
*
* @return mixed associative array of the HTTP codes as keys, and the message
*    strings as values, or null of the given $code does not exist.
* @throws CakeException If an attempt is made to add an invalid status code
*/

Если вы планируете не использовать ни одного стандартного кода с API, я бы возвратил код в x-заголовке или в ответ, например Jsend делает это например.

1

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

Других решений пока нет …

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