AJAX Laravel 5.2中的验证验证

时间:2016-04-13 19:08:21

标签: php ajax laravel laravel-5.2

我对Laravel中的AJAX感到有点困惑。我是Laravel,OOP和OOP框架的新手,我不知道如何做AJAX请求。我通过网络阅读了几个教程,但都有所不同,看起来很复杂。

我安装了Laravel 5.2,我使用SqlCommand objSelectCommand1 = new SqlCommand("Select mainMenuNum , mainMenuData from [menudatas] WHERE [ivrNumber]=10000 ;", objConnection); SqlDataReader dataReader = objSelectCommand1.ExecuteReader(); DataTable dt = new DataTable(); string data = null; dt.Load(dataReader); 设置了身份验证,我将注册表从switch (xml) { case 0: TextToSpeech("No information on 0 button"); break; case 1: foreach(DataRow row in dt.Rows) { SqlCommand cmd = new SqlCommand("Select mainMenuData from [menudatas] WHERE [mainMenuNum] = '" + xml + "' && [ivrNumber]=10000 ", objConnection); SqlDataReader dr = cmd.ExecuteReader(); while (dataReader.Read()) { data = dataReader.GetString(0); } } dataReader.Close(); Console.WriteLine(data); break; } 移到php artisan make:auth

我为必填字段制作了一个小的jQuery片段,但我想为每个字段(名称,电子邮件,密码,密码确认)进行AJAX验证。 Laravel提供验证规则,我想重用它们。

我不知道怎么做......

它是如何工作的?一个具体的例子很好,帮助我理解。

由于

3 个答案:

答案 0 :(得分:0)

您可以使用Laravel验证程序检查必填字段。 但是这个验证你只能在后端使用它,而不是前端。

例如:

public function store(Request $request)
{
    $validator = Validator::make($request->all(), [
        'title' => 'required|unique:posts|max:255',
        'body' => 'required',
    ]);

    if ($validator->fails()) {
        return response()->json($validator->messages(), 500);
    }
}

你在laravel文档中有一个类似的例子: https://laravel.com/docs/5.2/validation

答案 1 :(得分:0)

不要忘记csrf令牌。

是你的头脑;

<meta name="_token" content="{!! csrf_token() !!}"/>

是你所有的ajax请求,

    $.ajaxSetup({
        headers: {
            'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
        }
    });

另一个选择

class VerifyCsrfToken extends BaseVerifier
{
    /**
     * The URIs that should be excluded from CSRF verification.
     *
     * @var array
     */
    protected $except = [
        'news/', 'users/' // a.com/news/1
    ];
}

答案 2 :(得分:0)

Laravel出于安全原因提供CSRF令牌。

如果要在laravel中使用AJAX,则必须使用数据传递CSRF令牌。 如果您没有提供CSRF令牌并调用AJAX,则会抛出CSRF令牌不匹配异常。

你应该读到这个: https://laravel.com/docs/master/routing#csrf-protection