简体   繁体   English

未定义的AJAX Laravel 5.2消息

[英]Undefined AJAX Laravel 5.2 Message

My problem is not work AJAX Laravel For me in ver5.2 how to solve this problem my error: 我的问题不起作用AJAX Laravel对于我在ver5.2中如何解决此问题我的错误:

Route [category] not defined. 路由[类别]未定义。 (View: C:\\wamp\\www\\pc\\resources\\views\\admin\\category.blade.php) (视图:C:\\ wamp \\ www \\ pc \\ resources \\ views \\ admin \\ category.blade.php)

my Route file: 我的路线文件:

Route::group(['middleware' => 'web'], function () {
    Route::auth();
    Route::get('category', 'categoryController@index');
});
Route::group(['middleware' => 'web'], function () {
    Route::auth();
    Route::post('category', 'categoryController@create');
});

my controller: 我的控制器:

public function create(messageRequest $request)
{
    try {
        Category::create($request->all());
        return response()->json(array('sms'=>'save Success'));
    }catch (Exception $e){
        return response()->json(array('err'=>'error'));
    }
}

my javascript: 我的JavaScript:

<script>
    $('#submit').on('click', function (e) {
        e.preventDefault();
        var data = $('#create').serialize();
        $.ajax({
            type: 'post',
            url: '{!! URL::route('category') !!}',
            data: data,
            success: function (data) {
                alert(data.sms);
                console.log('data');
            },
            error:function(){
                alert(data.err);
                console.log('data');
            }
        });
    });
</script>
Route::post('category', 'categoryController@create');

改成

Route::post('category', ['as' => 'category',  'uses' => 'categoryController@create']);

in view: 鉴于:

$.ajaxSetup({
headers: {
    'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
        }
});
 <meta name="csrf-token" content="{{ csrf_token() }}" /> <input type="hidden" name="_token" value="{{ csrf_token() }}"> 

in controller: 在控制器中:

 /**
 * Determine if the session and input CSRF tokens match.
 *
 * @param \Illuminate\Http\Request $request
 * @return bool
 */
protected function tokensMatch($request)
{
    // If request is an ajax request, then check to see if token matches token provider in
    // the header. This way, we can use CSRF protection in ajax requests also.
    $token = $request->ajax() ? $request->header('X-CSRF-Token') : $request->input('_token');

    return $request->session()->token() == $token;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM