草庐IT

php - Laravel 5 UnexpectedValueException 响应

coder 2024-04-08 原文

我正在使用 Laravel 5.1,但出于某种原因,我时常遇到此错误:

UnexpectedValueException in Response.php line 397: The Response content must be a string or object implementing __toString(), "boolean" given.

非常令人沮丧的是,这是非常不可预测的,而且它只是不时发生 - 因此甚至调试都非常困难,因为它不一致。我有一个简单的方法来转储翻译文件,如下所示:

Route::get('test', function() {
    return trans('restaurant');
});

如果我不断刷新页面,它会在大部分时间显示正常的输出。但是,每 20-30 次调用一次,我就会收到错误!有人可以在这里阐明一下吗?

这是堆栈跟踪:

UnexpectedValueException in Response.php line 397:
The Response content must be a string or object implementing __toString(), "boolean" given.
in Response.php line 397
at Response->setContent(false) in Response.php line 54
at Response->setContent(array(...)) in Response.php line 200
at Response->__construct(array(...)) in Router.php line 1229
at Router->prepareResponse(object(Request), array(...)) in Router.php line 709
at Router->Illuminate\Routing\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 139
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in LocaleSettings.php line 30
at LocaleSettings->handle(object(Request), object(Closure))
at call_user_func_array(array(object(LocaleSettings), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in LaravelLocalizationRedirectFilter.php line 53
at LaravelLocalizationRedirectFilter->handle(object(Request), object(Closure))
at call_user_func_array(array(object(LaravelLocalizationRedirectFilter), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in LocaleSessionRedirect.php line 25
at LocaleSessionRedirect->handle(object(Request), object(Closure))
at call_user_func_array(array(object(LocaleSessionRedirect), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103
at Pipeline->then(object(Closure)) in Router.php line 710
at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 675
at Router->dispatchToRoute(object(Request)) in Router.php line 635
at Router->dispatch(object(Request)) in Kernel.php line 236
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 139
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Debugbar.php line 49
at Debugbar->handle(object(Request), object(Closure))
at call_user_func_array(array(object(Debugbar), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in VerifyCsrfToken.php line 50
at VerifyCsrfToken->handle(object(Request), object(Closure))
at call_user_func_array(array(object(VerifyCsrfToken), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in ShareErrorsFromSession.php line 49
at ShareErrorsFromSession->handle(object(Request), object(Closure))
at call_user_func_array(array(object(ShareErrorsFromSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in StartSession.php line 62
at StartSession->handle(object(Request), object(Closure))
at call_user_func_array(array(object(StartSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37
at AddQueuedCookiesToResponse->handle(object(Request), object(Closure))
at call_user_func_array(array(object(AddQueuedCookiesToResponse), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in CheckForMaintenanceMode.php line 44
at CheckForMaintenanceMode->handle(object(Request), object(Closure))
at call_user_func_array(array(object(CheckForMaintenanceMode), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103
at Pipeline->then(object(Closure)) in Kernel.php line 122
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 87
at Kernel->handle(object(Request)) in index.php line 54

最佳答案

只需添加异常处理程序。以便您可以处理发生错误时显示哪些数据。

Route::get('test', function() {
        $response = trans('restaurant')
        try{
          return $response;
        } 
        catch(Exception $e) {
           return [];
        }
    });

关于php - Laravel 5 UnexpectedValueException 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35688895/

有关php - Laravel 5 UnexpectedValueException 响应的更多相关文章

随机推荐