Spec-Zone.ru › Symfony 3.2

JsonResponse

class JsonResponse extends Response

Response представляет HTTP-ответ в формате JSON.

Обратите внимание, что этот класс не принуждает возвращаемое содержимое JSON быть объектом. Тем не менее, рекомендуется возвращать объект, так как это защищает вас от XSSI и JSON-JavaScript Hijacking.

Константы

HTTP_CONTINUE
HTTP_SWITCHING_PROTOCOLS
HTTP_PROCESSING
HTTP_OK
HTTP_CREATED
HTTP_ACCEPTED
HTTP_NON_AUTHORITATIVE_INFORMATION
HTTP_NO_CONTENT
HTTP_RESET_CONTENT
HTTP_PARTIAL_CONTENT
HTTP_MULTI_STATUS
HTTP_ALREADY_REPORTED
HTTP_IM_USED
HTTP_MULTIPLE_CHOICES
HTTP_MOVED_PERMANENTLY
HTTP_FOUND
HTTP_SEE_OTHER
HTTP_NOT_MODIFIED
HTTP_USE_PROXY
HTTP_RESERVED
HTTP_TEMPORARY_REDIRECT
HTTP_PERMANENTLY_REDIRECT
HTTP_BAD_REQUEST
HTTP_UNAUTHORIZED
HTTP_PAYMENT_REQUIRED
HTTP_FORBIDDEN
HTTP_NOT_FOUND
HTTP_METHOD_NOT_ALLOWED
HTTP_NOT_ACCEPTABLE
HTTP_PROXY_AUTHENTICATION_REQUIRED
HTTP_REQUEST_TIMEOUT
HTTP_CONFLICT
HTTP_GONE
HTTP_LENGTH_REQUIRED
HTTP_PRECONDITION_FAILED
HTTP_REQUEST_ENTITY_TOO_LARGE
HTTP_REQUEST_URI_TOO_LONG
HTTP_UNSUPPORTED_MEDIA_TYPE
HTTP_REQUESTED_RANGE_NOT_SATISFIABLE
HTTP_EXPECTATION_FAILED
HTTP_I_AM_A_TEAPOT
HTTP_MISDIRECTED_REQUEST
HTTP_UNPROCESSABLE_ENTITY
HTTP_LOCKED
HTTP_FAILED_DEPENDENCY
HTTP_RESERVED_FOR_WEBDAV_ADVANCED_COLLECTIONS_EXPIRED_PROPOSAL
HTTP_UPGRADE_REQUIRED
HTTP_PRECONDITION_REQUIRED
HTTP_TOO_MANY_REQUESTS
HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE
HTTP_UNAVAILABLE_FOR_LEGAL_REASONS
HTTP_INTERNAL_SERVER_ERROR
HTTP_NOT_IMPLEMENTED
HTTP_BAD_GATEWAY
HTTP_SERVICE_UNAVAILABLE
HTTP_GATEWAY_TIMEOUT
HTTP_VERSION_NOT_SUPPORTED
HTTP_VARIANT_ALSO_NEGOTIATES_EXPERIMENTAL
HTTP_INSUFFICIENT_STORAGE
HTTP_LOOP_DETECTED
HTTP_NOT_EXTENDED
HTTP_NETWORK_AUTHENTICATION_REQUIRED
DEFAULT_ENCODING_OPTIONS

Свойства

ResponseHeaderBag $headers from Response
static array $statusTexts Таблица перевода кодов состояния. from Response

Методы

__construct(mixed $data = null, int $status = 200, array $headers = array(), bool $json = false)
static Response create(mixed $data = null, int $status = 200, array $headers = array())

Метод фабрики для цепочки вызовов.

string __toString()

Возвращает ответ как строку HTTP.

из Response
__clone()

Клонирует текущий экземпляр Response.

из Response
$this prepare(Request $request)

Подготавливает ответ перед отправкой клиенту.

из Response
$this sendHeaders()

Отправляет HTTP-заголовки.

из Response
$this sendContent()

Отправляет содержимое для текущего веб-ответа.

из Response
$this send()

Отправляет HTTP-заголовки и содержимое.

из Response
$this setContent(mixed $content)

Устанавливает содержимое ответа.

из Response
string getContent()

Получает текущее содержимое ответа.

из Response
$this setProtocolVersion(string $version)

Устанавливает версию протокола HTTP (1.0 или 1.1).

из Response
string getProtocolVersion()

Получает версию протокола HTTP.

из Response
$this setStatusCode(int $code, mixed $text = null)

Устанавливает код состояния ответа.

из Response
int getStatusCode()

Получает код состояния для текущего веб-ответа.

из Response
$this setCharset(string $charset)

Устанавливает кодировку ответа.

из Response
string getCharset()

Возвращает кодировку ответа.

из Response
bool isCacheable()

Возвращает true, если ответ подходит для кэширования в любых обстоятельствах.

из Response
bool isFresh()

Возвращает true, если ответ "свежий".

из Response
bool isValidateable()

Возвращает true, если ответ содержит заголовки, которые могут использоваться для проверки ответа на сервере источника с помощью запроса conditional GET.

из Response
$this setPrivate()

Помечает ответ как "приватный".

из Response
$this setPublic()

Помечает ответ как "публичный".

из Response
bool mustRevalidate()

Возвращает true, если ответ должен быть перепроверен кэшами.

из Response
DateTime getDate()

Возвращает заголовок Date как экземпляр DateTime.

из Response
$this setDate(DateTime $date)

Устанавливает заголовок Date.

из Response
int getAge()

Возвращает возраст ответа.

из Response
$this expire()

Помечает ответ устаревшим, установив заголовок Age равным максимальному возрасту ответа.

из Response
DateTime|null getExpires()

Возвращает значение заголовка Expires как экземпляр DateTime.

из Response
$this setExpires(DateTime $date = null)

Устанавливает HTTP-заголовок Expires с экземпляром DateTime.

из Response
int|null getMaxAge()

Возвращает количество секунд после времени, указанного в заголовке Date ответа, когда ответ больше не должен считаться свежим.

из Response
$this setMaxAge(int $value)

Устанавливает количество секунд, после которых ответ больше не должен считаться свежим.

из Response
$this setSharedMaxAge(int $value)

Устанавливает количество секунд, после которых ответ больше не должен считаться свежим для кэшей общего пользования.

из Response
int|null getTtl()

Возвращает время жизни ответа в секундах.

из Response
$this setTtl(int $seconds)

Устанавливает время жизни ответа для кэшей общего пользования.

из Response
$this setClientTtl(int $seconds)

Устанавливает время жизни ответа для частных/клиентских кэшей.

из Response
DateTime|null getLastModified()

Возвращает заголовок Last-Modified HTTP как экземпляр DateTime.

из Response
$this setLastModified(DateTime $date = null)

Устанавливает заголовок Last-Modified HTTP с экземпляром DateTime.

из Response
string|null getEtag()

Возвращает буквальное значение заголовка ETag HTTP.

из Response
$this setEtag(string|null $etag = null, bool $weak = false)

Устанавливает значение ETag.

из Response
$this setCache(array $options)

Устанавливает заголовки кэширования ответа (валидация и/или истечение срока действия).

из Response
$this setNotModified()

Изменяет ответ, чтобы он соответствовал правилам, определённым для кода состояния 304.

из Response
bool hasVary()

Возвращает true, если ответ содержит заголовок Vary.

из Response
массив getVary()

Возвращает массив имён заголовков, заданных в заголовке Vary.

из Response
$this setVary(string|array $headers, bool $replace = true)

Устанавливает заголовок Vary.

из Response
bool isNotModified(Request $request)

Определяет, соответствуют ли валидаторы ответа (ETag, Last-Modified) условным значениям, указанным в запросе.

из Response
bool isInvalid()

Является ли ответ недействительным?

из Response
bool isInformational()

Является ли ответ информативным?

из Response
bool isSuccessful()

Является ли ответ успешным?

из Response
bool isRedirection()

Является ли ответ перенаправлением?

из Response
bool isClientError()

Есть ли ошибка клиента?

из Response
bool isServerError()

Была ли ошибка на стороне сервера?

из Response
bool isOk()

Является ли ответ успешным (OK)?

из Response
bool isForbidden()

Запрещён ли доступ к ответу?

из Response
bool isNotFound()

Возвращает ли ответ ошибку "не найдено"?

из Response
bool isRedirect(string $location = null)

Является ли ответ перенаправлением?

из Response
bool isEmpty()

Пуст ли ответ?

из Response
static closeOutputBuffers(int $targetLevel, bool $flush)

Очищает или сбрасывает буферы вывода до заданного уровня.

из Response
static fromJsonString($data = null, $status = 200, $headers = array())

Упрощает создание JsonResponse из исходного JSON.

$this setCallback(string|null $callback = null)

Устанавливает обратный вызов JSONP.

$this setJson(string $json)

Устанавливает строку, содержащую JSON-документ, который будет отправлен.

$this setData(mixed $data = array())

Устанавливает данные, которые будут отправлены как JSON.

int getEncodingOptions()

Возвращает опции, используемые при кодировании данных в JSON.

$this setEncodingOptions(int $encodingOptions)

Устанавливает опции, используемые при кодировании данных в JSON.

Подробности

__construct(mixed $data = null, int $status = 200, array $headers = array(), bool $json = false)

Параметры

mixed $data Данные ответа
int $status Код состояния ответа
array $headers Массив заголовков ответа
bool $json Если данные уже являются строкой JSON

static Response create(mixed $data = null, int $status = 200, array $headers = array())

Метод-фабрика для цепочки вызовов.

Пример:

return JsonResponse::create($data, 200)
    ->setSharedMaxAge(300);

Параметры

mixed $data Данные ответа в формате JSON
int $status Код состояния ответа
array $headers Массив заголовков ответа

Значение, возвращаемое функцией

Response

string __toString()

Возвращает ответ как строку HTTP.

Представление ответа в виде строки совпадает со строкой, которая будет отправлена клиенту, только если перед этим был вызван метод prepare().

Значение, возвращаемое функцией

string Ответ как строка HTTP

См. также

prepare()

__clone()

Клонирует текущий экземпляр Response.

$this prepare(Request $request)

Подготавливает ответ перед отправкой клиенту.

Этот метод корректирует ответ, чтобы он соответствовал RFC 2616. Большинство изменений основаны на запросе, "связанном" с этим ответом.

Параметры

Request $request Экземпляр Request

Значение, возвращаемое функцией

$this

$this sendHeaders()

Отправляет HTTP-заголовки.

Значение, возвращаемое функцией

$this

$this sendContent()

Отправляет содержимое для текущего ответа веб-страницы.

Значение, возвращаемое функцией

$this

$this send()

Отправляет HTTP-заголовки и содержимое.

Значение, возвращаемое функцией

$this

$this setContent(mixed $content)

Устанавливает содержимое ответа.

Допустимые типы: строки, числа, null и объекты, реализующие метод __toString().

Параметры

mixed $content Содержимое, которое может быть преобразовано в строку

Значение, возвращаемое функцией

$this

Исключения

UnexpectedValueException

string getContent()

Получает текущее содержимое ответа.

Значение, возвращаемое функцией

string Содержимое

$this setProtocolVersion(string $version)

Устанавливает версию протокола HTTP (1.0 или 1.1).

Параметры

string $version Версия протокола HTTP

Значение, возвращаемое функцией

$this

string getProtocolVersion()

Получает версию протокола HTTP.

Значение, возвращаемое функцией

string Версия протокола HTTP

$this setStatusCode(int $code, mixed $text = null)

Устанавливает код состояния ответа.

Параметры

int $code Код состояния HTTP
mixed $text Текст состояния HTTP

Если текст статуса равен null, он автоматически заполняется для известных кодов состояния и остается пустым в противном случае.

Значение, возвращаемое функцией

$this

Исключения

InvalidArgumentException При некорректном коде состояния HTTP

int getStatusCode()

Получает код состояния для текущего веб-ответа.

Значение, возвращаемое функцией

int Код состояния

$this setCharset(string $charset)

Устанавливает кодировку символов ответа.

Параметры

string $charset Кодировка

Значение, возвращаемое функцией

$this

string getCharset()

Получает кодировку символов ответа.

Значение, возвращаемое функцией

string Кодировка

bool isCacheable()

Возвращает true, если ответ может быть кэширован в любых обстоятельствах.

Ответы, помеченные как "private" с явным директивой Cache-Control, считаются некэшируемыми.

Ответы без срока годности (Expires, max-age) или валидатора кэша (Last-Modified, ETag) считаются некэшируемыми.

Значение, возвращаемое функцией

bool true, если ответ может быть кэширован, false в противном случае

bool isFresh()

Возвращает true, если ответ "свежий".

Свежие ответы могут быть переданы из кэша без взаимодействия с источником. Ответ считается свежим, если он включает указатель Cache-Control/max-age или заголовок Expires, и вычисленное время жизни меньше срока годности.

Значение, возвращаемое функцией

bool true, если ответ свежий, false в противном случае

bool isValidateable()

Возвращает true, если ответ содержит заголовки, которые можно использовать для проверки ответа с сервером-источником с помощью условного запроса GET.

Значение, возвращаемое функцией

bool true, если ответ может быть проверен, false в противном случае

$this setPrivate()

Помечает ответ как "private".

Это делает ответ непригодным для других клиентов.

Значение, возвращаемое функцией

$this

$this setPublic()

Помечает ответ как "public".

Это делает ответ пригодным для других клиентов.

Значение, возвращаемое функцией

$this

bool mustRevalidate()

Возвращает true, если ответ должен быть проверен кэшами.

Этот метод указывает, что ответ не должен быть передан устаревшим кэшем в никаких обстоятельствах без предварительной проверки с источником. В случае наличия, TTL ответа не должно быть превышено значения, предоставленного источником.

Значение, возвращаемое функцией

bool true, если ответ должен быть проверен кэшем, false в противном случае

DateTime getDate()

Возвращает заголовок Date как экземпляр DateTime.

Значение, возвращаемое функцией

DateTime Экземпляр \DateTime

Исключения

RuntimeException При невозможности анализа заголовка

$this setDate(DateTime $date)

Устанавливает заголовок Date.

Параметры

DateTime $date Экземпляр \DateTime

Значение, возвращаемое функцией

$this

int getAge()

Возвращает возраст ответа.

Значение, возвращаемое функцией

int Возраст ответа в секундах

$this expire()

Помечает ответ устаревшим, установив заголовок Age равным максимальному возрасту ответа.

Значение, возвращаемое функцией

$this

DateTime|null getExpires()

Возвращает значение заголовка Expires в виде экземпляра DateTime.

Значение, возвращаемое функцией

DateTime|null Экземпляр DateTime или null, если заголовок не существует

$this setExpires(DateTime $date = null)

Устанавливает заголовок HTTP Expires с экземпляром DateTime.

Передача null в качестве значения удалит заголовок.

Параметры

DateTime $date Экземпляр \DateTime или null для удаления заголовка

Значение, возвращаемое функцией

$this

int|null getMaxAge()

Возвращает количество секунд после времени, указанного в заголовке Date ответа, когда ответ больше не должен считаться свежим.

Сначала проверяется директива s-maxage, затем директива max-age, а затем используется заголовок expires. Возвращает null, когда максимальный срок хранения установить невозможно.

Значение возврата

int|null Количество секунд

$this setMaxAge(int $value)

Устанавливает количество секунд, после которого ответ больше не должен считаться свежим.

Этот метод устанавливает директиву Cache-Control max-age.

Параметры

int $value Количество секунд

Значение возврата

$this

$this setSharedMaxAge(int $value)

Устанавливает количество секунд, после которого ответ больше не должен считаться свежим для общих кэшей.

Этот метод устанавливает директиву Cache-Control s-maxage.

Параметры

int $value Количество секунд

Значение возврата

$this

int|null getTtl()

Возвращает время жизни ответа в секундах.

Возвращает null, когда информация о свежести ответа отсутствует.

Когда время жизни ответа <= 0, ответ не может быть предоставлен из кэша без предварительной перепроверки с источником.

Значение возврата

int|null Время жизни в секундах

$this setTtl(int $seconds)

Устанавливает время жизни ответа для общих кэшей.

Этот метод корректирует директиву Cache-Control/s-maxage.

Параметры

int $seconds Количество секунд

Значение возврата

$this

$this setClientTtl(int $seconds)

Устанавливает время жизни ответа для частных/клиентских кэшей.

Этот метод корректирует директиву Cache-Control/max-age.

Параметры

int $seconds Количество секунд

Значение возврата

$this

DateTime|null getLastModified()

Возвращает заголовок Last-Modified HTTP в виде экземпляра DateTime.

Значение возврата

DateTime|null Экземпляр DateTime или null, если заголовок не существует

Исключения

RuntimeException При невозможности разобрать заголовок HTTP

$this setLastModified(DateTime $date = null)

Устанавливает заголовок Last-Modified HTTP с экземпляром DateTime.

Передача null в качестве значения удалит заголовок.

Параметры

DateTime $date Экземпляр \DateTime или null для удаления заголовка

Значение возврата

$this

string|null getEtag()

Возвращает буквальное значение заголовка ETag HTTP.

Значение возврата

string|null Заголовок ETag HTTP или null, если он не существует

$this setEtag(string|null $etag = null, bool $weak = false)

Устанавливает значение ETag.

Параметры

string|null $etag Уникальный идентификатор ETag или null для удаления заголовка
bool $weak Нужно ли использовать слабый ETag

Значение возврата

$this

$this setCache(array $options)

Устанавливает заголовки кэша ответа (проверка и/или срок хранения).

Доступные опции: etag, lastmodified, maxage, s_maxage, private и public.

Параметры

array $options Массив опций кэша

Значение возврата

$this

Исключения

InvalidArgumentException

$this setNotModified()

Изменяет ответ так, чтобы он соответствовал правилам, определенным для кода состояния 304.

Это устанавливает состояние, удаляет тело и отбрасывает любые заголовки, которые НЕ ДОЛЖНЫ включаться в ответы 304.

Значение возврата

$this

См. также

http://tools.ietf.org/html/rfc2616#section-10.3.5

bool hasVary()

Возвращает true, если ответ содержит заголовок Vary.

Значение возврата

bool true, если ответ содержит заголовок Vary, иначе false

array getVary()

Возвращает массив имён заголовков, указанных в заголовке Vary.

Значение возврата

array Массив имён Vary

$this setVary(string|array $headers, bool $replace = true)

Устанавливает заголовок Vary.

Параметры

string|array $headers
bool $replace Заменить ли фактическое значение (по умолчанию true)

Значение возврата

$this

bool isNotModified(Request $request)

Определяет, соответствуют ли валидаторы ответа (ETag, Last-Modified) условным значениям, указанным в запросе.

Если ответ не изменён, устанавливает код состояния 304 и удаляет фактическое содержимое, вызвав метод setNotModified().

Параметры

Request $request Экземпляр Request

Значение возврата

bool true, если валидаторы ответа соответствуют запросу, иначе false

bool isInvalid()

Недействителен ли ответ?

Значение возврата

bool

См. также

http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html

bool isInformational()

Информативный ли ответ?

Значение возврата

bool

bool isSuccessful()

Успешен ли ответ?

Значение возврата

bool

bool isRedirection()

Является ли ответ перенаправлением?

Значение возврата

bool

bool isClientError()

Есть ли ошибка клиента?

Значение возврата

bool

bool isServerError()

Была ли ошибка на стороне сервера?

Значение возврата

bool

bool isOk()

Успешен ли ответ?

Значение возврата

bool

bool isForbidden()

Запрещен ли доступ к ответу?

Значение возврата

bool

bool isNotFound()

Ошибка «не найдено» в ответе?

Значение возврата

bool

bool isRedirect(string $location = null)

Является ли ответ перенаправлением?

Параметры

string $location

Значение возврата

bool

bool isEmpty()

Пустой ли ответ?

Значение возврата

bool

static closeOutputBuffers(int $targetLevel, bool $flush)

Очищает или сбрасывает буферы вывода до целевого уровня.

Результат может быть больше целевого уровня, если был обнаружен не удаляемый буфер.

Параметры

int $targetLevel Целевой уровень буферизации вывода
bool $flush Сбрасывать или очищать буферы

static fromJsonString($data = null, $status = 200, $headers = array())

Упрощает создание JsonResponse из JSON.

Параметры

$data
$status
$headers

$this setCallback(string|null $callback = null)

Устанавливает обратный вызов JSONP.

Параметры

string|null $callback Обратный вызов JSONP или null для отключения

Возвращаемое значение

$this

Исключения

InvalidArgumentException При некорректном имени обратного вызова

$this setJson(string $json)

Устанавливает строку со сырым JSON-документом для отправки.

Параметры

string $json

Возвращаемое значение

$this

Исключения

InvalidArgumentException

$this setData(mixed $data = array())

Устанавливает данные для отправки в формате JSON.

Параметры

mixed $data

Возвращаемое значение

$this

Исключения

InvalidArgumentException

int getEncodingOptions()

Возвращает опции, используемые при кодировании данных в JSON.

Возвращаемое значение

int

$this setEncodingOptions(int $encodingOptions)

Устанавливает опции, используемые при кодировании данных в JSON.

Параметры

int $encodingOptions

Возвращаемое значение

$this

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.2/Symfony/Component/HttpFoundation/JsonResponse.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API