[英]how to send message with abort in Laravel
如果签名无效,我必须中止某些操作,并且我还想向显示它的视图发送一条消息。 我记得一年前在我的上一个项目中能够做类似的事情。 但是现在当我尝试这个
if (!$request->hasValidSignature()) {
abort(401, 'Signature is not valid.');
}
我收到一条错误消息,提示$ message不可用
这是中止功能的定义,因此很明显它会将消息作为输入。
public function abort($code, $message = '', array $headers = [])
{
if ($code == 404) {
throw new NotFoundHttpException($message);
}
throw new HttpException($code, $message, null, $headers);
}
我不知道为什么我会收到此错误:
ErrorException (E_ERROR)
Undefined variable: message (View:
C:\laragon\www\laraone\resources\views\errors\401.blade.php)
这是我使用该变量的401.blade.php的一部分...
<div class="content">
<div class="title">401</div>Unauthorized action, {{ $message }}
</div>
使用$exception->getMessage()
。 从文档 :
由
abort
函数引发的HttpException
实例将作为$exception
变量传递到视图:<h2>{{ $exception->getMessage() }}</h2>
因此,在您的情况下:
<div class="content">
<div class="title">401</div>Unauthorized action, {{ $exception->getMessage() }}
</div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.