laravel5.1.24 version
用过laravel中间件的都知道在middleware的用$next($request)->getContent()可以得到响应主体。
最近团队使用pjax开发, 一位同事使用getContent没有得到响应主题, 但是用 getOriginalContent 这个函数获取到了影响体,但总是会输入两次这个因为(string)view('index');这样的话实际上是调用的viewCLass的render函数,render函数就又会执行一次php文件。这样当然是不好的。
那么怎么解决呢?
之前说echo 不会输出是因为ob_start()的原因, 现在getContent输出不出来也应该是这个原因。在php.ini中有一个配置项output_buffering = 4096,这就让ob_start最多hold住4096个字符。
这个配置项是我同事告诉我的。只需要把这个值调高就好了。
贴下ob_start()调用图片。