راکت
حل شده

اعتبار سنجی و ارور 442 در reactjs و laravel

3 پاسخ

سلام من قصد دارم یه پروژه با react و لاراول پیاده سازی کنم اما برای لاگین و ریجیستر کردن ارور 422 در کنسول بهم نمایش داده میشه البته همه چیز درست پیش میره و اعتبار سنجی درست ولی اروز 422 در کنسول نمایش داده میشه چیکار کنم؟

محمد
محمد
@imamaad
ثبت پرسش جدید

پاسخ‌ها

3
محمد
محمد
@imamaad

تخصص: php , laravel , react

بهترین پاسخ

این مشکل خودم حل کردم بهتر پاسخش بدم اگر شخص دیگه ای با این موضوع رو به رو شد بتونه حلش کنه :
اعتبار سنجی لاراول کد وضعیت 422 رو بر میگردنه که از exception validation استفاده میکنه برای تغییر وضعیت دوتا راه هست یکی اینکه
exception validation شخصی بسازیم دوم اینکه یه respons ایجاد کنیم و متد rules رو با مقادیر مورد نظر پر کنیم و متد failedValidation را override کنیم به شکل زیر :

protected function failedValidation(Validator $validator)
    {
        throw (new ValidationException($validator))
            ->errorBag($this->errorBag)
            ->redirectTo($this->getRedirectUrl())->status(200);
    }

درون متد status میتونیم کد وضعیت مورد نظر رو به دلخواه تغییر بدیم که من اینجا کد وضعیت برابر 200 قرار دادم که یعنی با موقیت انجام شد.

coarad supp
coarad supp
@coaradsupp

تخصص: برنامه نویس لاراول

احتمالا واسه برگشت دادن ولیدیشن هست، قبل از ولیدیشن یه ریسپانس برگردون و چاپ کن، یکی یکی چک کن ببین کدوم قسمت داره مشکل ایجاد میکنه

محمد
محمد
@imamaad

تخصص: php , laravel , react

نه validation درست انجام میشه و فیلد هایی که error داره رو برمیگردونه همونطور که میدونید کد وضعیت validation 422 هست که این درست ولی تو کنسول ارور 422 میده (POST http://127.0.0.1:8000/api/v1/login 422 (Unprocessable Entity))

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام