作者:sourcestrea
项目:highcore-ap
/**
* Render an exception into an HTTP response.
*
* @param \Illuminate\Http\Request $request
* @param \Exception $e
* @return \Illuminate\Http\Response
*/
public function render($request, Exception $e)
{
// If this exception is listed for code forwarding
if ($this->shouldConvertToHttpException($e)) {
$e = new HttpException($e->getCode(), $e->getMessage(), $e);
}
// If the request wants JSON (AJAX doesn't always want JSON)
if ($request->wantsJson()) {
// Define the response
$response = ['errors' => 'Sorry, something went wrong.'];
// If the app is in debug mode
if (config('app.debug')) {
// Add the exception class name, message and stack trace to response
$response['exception'] = get_class($e);
// Reflection might be better here
$response['message'] = $e->getMessage();
$response['trace'] = $e->getTrace();
}
// Default response of 400
$status = 400;
// If this exception is an instance of HttpException
if ($this->isHttpException($e)) {
// Grab the HTTP status code from the Exception
$status = $e->getStatusCode();
}
// Return a JSON response with the response array and status code
unset($response['trace']);
return response()->json($response, $status);
}
// Default to the parent class' implementation of handler
return parent::render($request, $e);
}
作者:webfactorybulgari
项目:Bas
/**
* Render an exception into an HTTP response.
*
* @param \Illuminate\Http\Request $request
* @param \Exception $e
* @return \Illuminate\Http\Response
*/
public function render($request, Exception $e)
{
/*
* Notification on TokenMismatchException
*/
if ($e instanceof TokenMismatchException) {
Notification::error(trans('global.Security token expired. Please, repeat your request.'));
return redirect()->back()->withInput();
}
if ($e instanceof HttpResponseException) {
return $e->getResponse();
} elseif ($e instanceof ModelNotFoundException) {
$e = new NotFoundHttpException($e->getMessage(), $e);
} elseif ($e instanceof AuthorizationException) {
$e = new HttpException(403, $e->getMessage());
} elseif ($e instanceof ValidationException && $e->getResponse()) {
return $e->getResponse();
}
if ($this->isHttpException($e)) {
return $this->toIlluminateResponse($this->renderHttpException($e), $e);
} else {
// Custom error 500 view on production
if (app()->environment() == 'production') {
return response()->view('errors.500', [], 500);
}
return $this->toIlluminateResponse($this->convertExceptionToResponse($e), $e);
}
}
作者:Okip
项目:una.ap
/**
* Render the given HttpException.
*
* @param \Symfony\Component\HttpKernel\Exception\HttpException $e
* @return \Symfony\Component\HttpFoundation\Response
*/
protected function renderHttpException(HttpException $e)
{
// load base JS
JavaScript::put(['base_url' => url('/'), 'site_name' => config('settings.app_name_' . config('app.locale'))]);
$seo_meta = ['page_title' => 'Erreur ' . $e->getStatusCode(), 'meta_desc' => $e->getMessage(), 'meta_keywords' => ''];
$data = ['code' => $e->getStatusCode(), 'seo_meta' => $seo_meta, 'css' => elixir('css/app.error.css')];
return response()->view('templates.common.errors.errors', $data);
}
作者:avil1
项目:cross-fit.lo
/**
* Render the given HttpException.
*
* @param \Symfony\Component\HttpKernel\Exception\HttpException $e
* @return \Symfony\Component\HttpFoundation\Response
*/
protected function renderHttpException(HttpException $e)
{
if (view()->exists('errors.' . $e->getStatusCode())) {
return response()->view('errors.' . $e->getStatusCode(), [], $e->getStatusCode());
} else {
return (new SymfonyDisplayer(config('app.debug')))->createResponse($e);
}
}
作者:kenarkos
项目:meltdow
function it_prepares_http_exceptions(HttpException $httpException)
{
$httpException->getStatusCode()->willReturn(404);
$httpException->getHeaders()->willReturn(['Header:test']);
$this->handleException($httpException);
$this->sendHttpCode()->shouldReturn(404);
$this->headers()->shouldReturn(['Header:test']);
}
作者:uiceston
项目:SmartBuil
/**
* Render the given HttpException.
*
* @param \Symfony\Component\HttpKernel\Exception\HttpException $e
* @return \Symfony\Component\HttpFoundation\Response
*/
protected function renderHttpException(HttpException $e)
{
$status = $e->getStatusCode();
if (view()->exists("errors.{$status}")) {
return response()->view("errors.{$status}", ['message' => $e->getMessage()], $status);
}
return parent::renderHttpException($e);
}
作者:swayo
项目:laravel-extended-error
protected function convertHttpExceptionToJsonResponse(HttpException $exc)
{
$data = json_decode($exc->getMessage(), true);
if (!is_array($data)) {
$data = ['_message' => $exc->getMessage()];
}
return new JsonResponse($data, $exc->getStatusCode());
}
作者:Hiroto-
项目:HkApp
/**
* Render the given HttpException.
*
* @param HttpException $e
*
* @return \Illuminate\Http\Response
*/
protected function renderHttpException(HttpException $e)
{
$code = $e->getStatusCode();
$default_config = ['title' => 'エラーが発生しました。', 'msg' => 'エラーが発生しました。'];
$error_set = config("errors.{$code}", $default_config);
$data = array_merge($error_set, ['exception' => $e]);
return response()->view('errors.all', $data, $code);
}
作者:vjaykoog
项目:smile-media-larave
/**
* Render the given HttpException.
*
* @param \Symfony\Component\HttpKernel\Exception\HttpException $e
* @return \Symfony\Component\HttpFoundation\Response
*/
protected function renderHttpException(HttpException $e)
{
$status = $e->getStatusCode();
if (view()->exists(config('smile.theme') . '::' . "errors.{$status}")) {
return response()->view(config('smile.theme') . '::' . "errors.{$status}", [], $status);
}
return (new SymfonyDisplayer(config('app.debug')))->createResponse($e);
}
作者:neomusi
项目:laravel-section-error-view
protected function renderHttpException(HttpException $e)
{
$status = $e->getStatusCode();
if (view()->exists($this->pathErrors . $status)) {
return response()->view($this->pathErrors . $status, ['exception' => $e], $status, $e->getHeaders());
} else {
return parent::renderHttpException($e);
}
}
作者:andrelott
项目:ApiCidadeEstadosIbg
/**
* Render the given HttpException.
*
* @param HttpException $e
* @return Response
*/
protected function renderHttpException(HttpException $e)
{
$status = $e->getStatusCode();
if (view()->exists("errors.{$status}")) {
return response(view("errors.{$status}"), $status);
} else {
return (new SymfonyExceptionHandler(env('APP_DEBUG')))->createResponse($e);
}
}
作者:jermangar
项目:ImagesManage
protected function renderHttpException(HttpException $e)
{
$status = $e->getStatusCode();
if (view()->exists("errors.{$status}")) {
return response()->view("errors.{$status}", [], $status);
} else {
return response()->view("errors.default", [], $status);
}
}
作者:hechoenlarave
项目:jarvis-platfor
/**
* Render the given HttpException.
*
* @param \Symfony\Component\HttpKernel\Exception\HttpException $e
* @return \Symfony\Component\HttpFoundation\Response
*/
protected function renderHttpException(HttpException $e)
{
$status = $e->getStatusCode();
if (view()->exists("jplatformui::errors.{$status}")) {
return response()->view("jplatformui::errors.{$status}", ['exception' => $e], $status);
} else {
return $this->convertExceptionToResponse($e);
}
}
作者:sodacm
项目:sodacm
/**
* Render the given HttpException.
*
* @param \Symfony\Component\HttpKernel\Exception\HttpException $e
*
* @return \Symfony\Component\HttpFoundation\Response
*/
protected function renderHttpException(HttpException $e)
{
$status = $e->getStatusCode();
if (view()->exists("soda-example::errors.{$status}")) {
return response()->view("soda-example::errors.{$status}", ['exception' => $e], $status, $e->getHeaders());
} else {
return response()->view("soda-example::errors.other", ['exception' => $e], $status, $e->getHeaders());
}
}
作者:tahirghor
项目:dic
/**
* Render a HTTP exception, including a custom error message.
*
* @param \HttpException $e
* @return \Illuminate\Http\Response
*/
protected function renderHttpException(HttpException $e)
{
$status = $e->getStatusCode();
if (!config('app.debug') && view()->exists("errors.{$status}")) {
return response()->view("errors.{$status}", compact('e'), $status);
} else {
return (new SymfonyDisplayer(config('app.debug')))->createResponse($e);
}
}
作者:valik61
项目:find-out.de
/**
* Функция для отображения сообщений на страницах ошибок (404, 500 etc.)
* @param HttpException $e
* @return \Illuminate\Http\Response
*/
protected function renderHttpException(HttpException $e)
{
$status = $e->getStatusCode();
if (view()->exists("errors.{$status}")) {
return response()->view("errors.{$status}", ['message' => $e->getMessage(), 'status' => $status, 'headers' => $e->getHeaders()], $status);
} else {
return $status;
}
}
作者:hugleste
项目:streams-platfor
/**
* Render the given HttpException.
*
* @param \Symfony\Component\HttpKernel\Exception\HttpException $e
* @return \Symfony\Component\HttpFoundation\Response
*/
protected function renderHttpException(HttpException $e)
{
$status = $e->getStatusCode();
if (!config('app.debug') && view()->exists("streams::errors.{$status}")) {
return response()->view("streams::errors.{$status}", ['message' => $e->getMessage()], $status);
} else {
return (new SymfonyDisplayer(config('app.debug')))->handle($e);
}
}
作者:kubil
项目:lume
/**
* 自定义错误,如果view/errors/ 下存在错误模板,就显示错误模板。
* @param $request
* @param HttpException $e
* @return \Laravel\Lumen\Http\ResponseFactory|\Symfony\Component\HttpFoundation\Response
*/
protected function renderHttpException($request, HttpException $e)
{
$status = $e->getStatusCode();
if (view()->exists("errors.{$status}")) {
return response(view("errors.{$status}", []), $status);
} else {
return parent::render($request, $e);
}
}
作者:pfdt
项目:bmsy
/**
* 自定义错误页
*/
protected function renderHttpException(HttpException $e)
{
if (Request::ajax() and !config('app.debug')) {
return responseJson($e->getStatusCode(), false);
} elseif (view()->exists('error.common') and !config('app.debug')) {
return response()->view('error.common', ['errorCode' => $e->getStatusCode()], $e->getStatusCode());
} else {
return (new SymfonyDisplayer(config('app.debug')))->createResponse($e);
}
}
作者:breachofmin
项目:birdmi
/**
* Render the given HttpException.
*
* @param \Symfony\Component\HttpKernel\Exception\HttpException $e
* @return \Symfony\Component\HttpFoundation\Response
*/
protected function renderHttpException(HttpException $e)
{
$status = $e->getStatusCode();
$view = $e->context !== Application::CXT_SITE ? "cms::errors." . $status : "errors." . $status;
if (view()->exists($view)) {
return response()->view($view, ['exception' => $e], $status);
} else {
return $this->convertExceptionToResponse($e);
}
}