Requestクラス404号に必要なのparam値が渡されない
class LoginRequest extends Request
{
public function authorize() {
return true;
}
public function rules() {
return [
'EmailAddress' => 'required',
'Password' => 'required',
];
}
public function messages() {
return [
"EmailAddress.required" => trans("login.RequiredEmailAddress"),
"Password.required" => trans("login.RequiredPassword")
];
}
}
ルート
Route::post('/AuthenticateUser',
array(
'uses' => 'API\Login\[email protected]',
'as' => 'AuthenticateUser'
)
);
コントローラのアクションメソッド私は、コントローラを持って
、Iリクエストクラスが入力pの検証のみを行ったarameters。以下のアクションメソッド
public function AuthenticateUser(LoginRequest $request) {
dd("Hello");
}
のURL
localhost:85/Laravel/public/api/v1/AuthenticateUser
私はURLをテストするためにポストマンChromeの拡張機能を使用しています。リクエストクラスでは、メールアドレスとパスワードの両方が必須パラメータであることがわかりました。
私は両方のパラメータ値を渡します。問題はなく、すべてが機能します。メールアドレスの値を空のままにすると... 404エラーが表示され、ここでスクリーンショットが表示されます。
電子メールアドレスが指定されていない場合、404エラーを取り除くために何か不足していますか?私はメールアドレスとパスワードの両方を渡すとき
が動作状態である電子メールアドレスを入力するために、エラーメッセージを期待していますが、ルートの取り扱いに直接確認されているので、それがある
URIを間違って入力している可能性があります。 - 'php artisan route:list'と入力して既存のURIをすべて表示してみてください。なぜあなたはURIの 'Laravel/public'部分も含めていますか?一般的にそれを追加する必要はなく、あなたのルートファイルに 'api/v1'という接頭辞を定義していますか? –
私はすでに電子メールアドレスとパスワードの両方を渡すとうまくいくという質問に言及しました。 – Pankaj
情報が不足しています。あなたは両方のフィールドを提供しても動作すると言いましたが、 'dd( 'hello')'の結果を見るべきですが、代わりにJSONを戻しています。あなたが404を手に入れようとしているのは、あなたのアプリのどこかで、あなたのデータベースの空のメールアドレスを探していて何も見つけられていないからです。あなたは問題を解決するためにJSONを出力している正しいコントローラを見つける必要があります。 –