8

在 Firefox 上,只有在 Firefox 上它才会弹出并给你一个警告“这个网页正在被重定向到一个新的位置。你想重新发送你输入的表单到新的位置。”

我没有表格,我使用 javascript 从文本框中提取值

我检查了萤火虫它说 PUT /admin/submit-scan/ 301 永久移动 PUT submit-scan 302 Found

我的JS

function submitGoods(){
    var registeredNo = $('input[name=registeredno]').val();
    var weight = $('input[name=weight]').val();
        $.ajax({
            type: 'PUT',
            url: '/admin/submit-scan/',
            data: {
                registeredNo: registeredNo,
                weight: weight,
                _token: csrfToken
            },
            dataType: 'json'
        }).done(function(data){

                data = $.parseJSON(data);
            });

}

我的路线

Route::put('submit-scan', 'Controllers\Admin\DashboardController@putUpdateSubmitScan');

我的控制器

 public function putUpdateSubmitScan()
    {
        if (Request::ajax())
        {
            return Response::json(array('success' => 1, 'data' => "test"));
        }
    }

知道出了什么问题吗?

4

1 回答 1

52

删除尾部斜杠应该可以解决问题(很可能在 Laravel 4.1 之前,见下文)。

url: '/admin/submit-scan'

更新

Laravel4 POST 中提到的无法解释的重定向到 GET

Laravelbootstrap/start.php正在打电话$app->redirectIfTrailingSlash();,这似乎是罪魁祸首。这在 Laravel 4.1 中已经改变:

http://laravel.com/docs/upgrade#upgrade-4.1

于 2013-09-22T12:50:52.583 回答