私はアプリを構築していて、webAPIとしてlaravel5を使用しています。 webAPIがメンテナンスモードになっているときに、アプリケーションにjsonエラーを戻したい場合、適切なメッセージを表示するためにアプリケーションにステータスコードが表示されます。ミドルウェアでjsonエラーを返しますか?
私はlaravel CheckForMaintenanceModeをsomereasonに書き換えて、Kernelで登録しました。
私はコントローラにreturn response()->json(['error' => "errormessage"], 422);
のように同じコードをwrithと私ができる
....メッセージ、satusを得ることができない私は
if ($this->app->isDownForMaintenance()) {
$ip = $request->getClientIp();
$allowIp = "111.222.333.444";
if ($allowIp != $ip) {
return response()->json(['error' => "Maintenance!!"], 503);
}
}
return $next($request);
を書くしかし、私は、アプリside.Iに何も得ることができますアプリケーションではmessage.status ..を取得しますが、私はミドルウェアで同じことをすることはできません。
なぜですか?どうやってするの?
リターンレスポンス(['Maintenance']、503); 'work?私は自分のミドルウェアで5.4を持っています。 – Joe
いいえ動作しませんでした。メッセージとステータスコードを取得できませんでした。 – chii
ありがとうございました@ジョー。私は答えを得ます!私は、カーネルのグローバルなHTTPミドルウェアではなく、ルート(api.php)ではないミドルウェアを置き換え、それは働いた。 – chii