简体   繁体   中英

Laravel route not found but data saved in DB

I am using laravel 5 POST route in an AJAX call, I have defined it as,

Route::post('user/save-draft', ['as' => 'user/save-draft', 'uses' => 'UserController@saveDraft']);

I am also using Route::resource for the same controller above this save-draft route as,

Route::resource('user', 'UserController', ['except' => 'index']);

I am posting a form using AJAX with loading icon, what I am having strange here is that, data get save in the database, but I receive 404 error in the console like,

jquery.js:9664 POST http://www.example.com/user/save-draft 404 (Not Found)

So strange, and loading icon never get disappear which I do in ajax.done function.

While, my AJAX call is something like that,

var postData = {};
postData['frmSaveDraft'] = $frmSaveDraft.serialize();
startAjaxLoading()
$.ajax({
    url: "http://www.example.com/user/save-draft",
    type: "POST",
    data: postData,
    success: function (data) {
        alert('success')
        stopAjaxLoading();
    }
});

UPDATE: Sorry, I missed url in AJAX here in above question,

Any thoughts ?

In controller method, I was returning response as,

echo json_encode(array('response' => true)); exit;

which was causing this issue may be exit keyword.

I have returned the response like,

 return Response::json(array('response' => true));

which works great.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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