راکت
حل شده

استفاده از Request Validation در api

4 پاسخ

من فایل Request ساختم و برای اعتبار سنجی میخوام استفاده کنم اما در api وقتی اعتبار سنجی fail میشه ریدایرکت میکنه چجوری درستش کنم

ثبت پرسش جدید

پاسخ‌ها

4
coarad supp
coarad supp
@coaradsupp

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

بهترین پاسخ
سیدعلی موسوی
سیدعلی موسوی
@juza66

تخصص: سی شارپ و پی اچ پی

من فایل Request ساختم و برای اعتبار سنجی میخوام استفاده کنم

کدی که نوشتین بذارین تا راهنمایی کنیم

اما در api وقتی اعتبار سنجی fail میشه ریدایرکت میکنه چجوری درستش کنم

یک روش ساده و بی دردسر : مثلا من یک API به شکل زیر دارم خب

 http://127.0.0.1:8000/api/v1/create

تویی api.php

 Route::post('/v1/create', 'ProductController@store');

که متد store یک ولیدیشن داره اینجوری نوشته میشه

$validator = Validator::make($request->all(), [
    'title' => 'required',
    'boyd' => 'required',
]);

if ($validator->passes()) {

    //کدهای صحیح
}

return response()->json(['error'=>$validator->errors()->all()], 400);

که نتیجه اش خطاها بصورت جیسون هست که شما سمت اپلکیشن میگیری و جاگزاری میکنی

علیرضا صالحی
علیرضا صالحی
@aliunity751

@juza66

موضوع همینه نمی خوام از validator استفاده کنم چون کد از حالت تمیزی در میاد میخوام از Request استفاده کنم
کد من به این صورت هست
کد من در Controller

    public function store(ArticleRequest $request)
    {
        \auth()->loginUsingId(1);
        $data = $request->all();
        unset($data['author_id']);

و کد اعتبار سنجی

class ArticleRequest extends FormRequest
{
    /
      Determine if the user is authorized to make this request.

      @return bool
     /
    public function authorize()
    {
        return true;
    }

    /
      Get the validation rules that apply to the request.

      @return array
     /
    public function rules()
    {
        return [
            'title' => 'required|string|max:150',
            'thumbnail' => 'required|mimes:png,jpg,jpeg|size:1500',
            'content' => 'required',
            'language' => 'required|max:2|in:fa,ar,en',
            'tags' => 'string'
        ];
    }
}

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

علیرضا صالحی
علیرضا صالحی
@aliunity751

@coaradsupp
درست شد ممنون

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

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