Laravel输出响应并退出

时间:2017-10-09 09:43:28

标签: php laravel laravel-5

Laravel的send()方法似乎只是回应内容,而不是其他内容。我从我的控制器调用内部函数,在某些情况下(ajax请求)需要发送json响应然后终止应用程序:

response()->json($data)->send();

之后我可能会使用简单的exit;电话,但这不会是一次优雅的关机。

我之前的框架响应输出函数正在刷新缓冲区,回显响应并在结束时调用exit。

在Laravel 5.5中输出响应和退出的正确方法是什么?

简短的摘要,以便您了解我的情况。 请注意,这会缩短很多,只是为了让您明白我的观点

控制器方法:

public function create( Request $request )
{
    $uploads = new Helpers\Upload();

    return view( 'page.create' )->withUpload($upload)->withForm( $this->form );
}

上传课程:

class Upload
{
     public function __construct()
     {
           if (request()->ajax() && request()->server('key'))
           {
               $data = [];
               // AJAX. Do some job, output json and exit
               [..]
               response()->json($data)->send();
               exit; // current way of terminating, not graceful though
           }

           // No ajax, do the usual stuff, setup class and return string
           [..]
           return 'My string';
     }
}

1 个答案:

答案 0 :(得分:0)

使用return终止函数并返回一些数据:

return response()->json($data);