Я использую плагин форм jQuery для отправки форм через AJAX.
При загрузке файлов в старых браузерах, которые не поддерживают загрузку файлов через AJAX (вместо этого они используют скрытый iframe) и возвращении ответа JSON, это рекомендуется заключать ответ в текстовое поле.
Теперь на стороне моего сервера Laravel я хочу вернуть ответ JSON, заключенный в текстовую область, если запрос не AJAX. Обычно, чтобы вернуть ответ JSON, я бы использовал return Response::json($value);
, но это не позволяет мне обернуть свой ответ текстовым полем.
Подсветка\Поддержка\Фасады\Ответ
public static function json($data = array(), $status = 200, array $headers = array(), $options = 0)
{
if ($data instanceof ArrayableInterface)
{
$data = $data->toArray();
}
return new JsonResponse($data, $status, $headers, $options);
}
Есть ли в Laravel чистый способ вернуть ответ JSON, завернутый в текстовую область? Я знаю, что могу просто вернуть строку json_encode()
ed, завернутую в текстовую область, но я просто ищу потенциально более чистый подход в стиле Laravel.
Ваше здоровье
app/start/global.php
(или в файле, который вы туда включаете), либо в поставщике услуг. (В Laravel 5 поставщик услуг определенно предпочтительнее). Пожалуйста, также проверьте документы, поскольку они также охватывают эту тему. 12.02.2015