处理 Ajax 请求(成功、错误消息)

Posted

技术标签:

【中文标题】处理 Ajax 请求(成功、错误消息)【英文标题】:Handling Ajax requests (success, errors messageS) 【发布时间】:2017-07-26 18:14:31 【问题描述】:

通常我不太使用 ajax 和 laravel,但在我的 laravel 应用程序中,我需要发出一些 ajax 请求,并处理错误和反馈。我看到了很多材料,但我正在寻找从后端到前端(php 和 js)的正确和最佳方式。

这是我的代码 js:

$(function() 

            $('.send').click(function(event)

                event.preventDefault();

                $.ajax(
                    url: "url('admin/posts/ajax')",
                    type: "post",
                    data: 'name':$('#name').val(), 'surname':$('#surname').val(), '_token': $('input[name=_token]').val(),
                    success: function(data)
                       console.log("sucess");
                    
                );
            );

        );
    </script>

控制器:

public function storeAjax(Request $request)
    

        $validator = Validator::make($request->all(), [
            'name'             => 'required',
            'surname'          => 'required'
        ]);
        if ($validator->fails()) 
            return response()->json($validator->messages(), 200);
        

    

但是给了我 500 错误,所以希望有人能以最好的方式指导我处理 laravel 和 ajax 之间的请求。

【问题讨论】:

【参考方案1】:

这是我如何使用 ajax 在 laravel 中发出 post 请求...

$("#form-id").submit(function(e)
    e.preventDefault();
    $.ajax(
        url: "url", //not the complete url, in your case it would be "admin/posts/ajax"
        type: "POST",
        data: new FormData(this),
        contentType: false,
        cache: false,
        processData:false,
        success: function(data)

            console.log("success");

        ,
        error: function(data)
            var errors = data.responseJSON;
            //print the errors
                   
    );
);

以及如何在控制器中处理它

public function store(Request $request)


    // Validate the request...
   $this->validate($request, [
        'name' => 'required',
        'email' => 'email|required',
    ]);

    //store data into database

    //return some data if required

路线应该是..

Route::post('store', 'YourController@store');

【讨论】:

你在 laravel 控制器上是如何处理的?

以上是关于处理 Ajax 请求(成功、错误消息)的主要内容,如果未能解决你的问题,请参考以下文章

何时出现错误:或成功:在 Ajax 请求中调用的处理程序

为啥AJAX请求处理成功了,还报404错误?

ajax处理错误

如何使用 PHP 为 JQuery .ajax() 返回正确的成功/错误消息?

CakePHP 中的 Ajax 错误处理

ajax成功请求到后台,但是前端报404错误