当PUT通过AJAX用于Laravel资源时不允许的方法

我在routes.php中有这个资源:

Route::resource('items', 'ItemsController', ['before' => 'admin_access']); 

试图通过AJAX到达ItemsContoller@update方法,但它正在推出405 Method not allowed错误:

 var $inputs = $('input', row); var id = $(row).find('.edit').data('id'); var data = $inputs.serializeJSON(); data['_token'] = $('input[name=_token]').val(); data['_method'] = 'PUT'; console.debug(data); $.ajax({ url: 'items/' + id, method: 'PUT', dataType: 'json', data: data, complete: function (data) { if (data.success) { itemsTable.ajax.reload(); } } }); 

iddata变量都包含正确的信息。

当我使用PUT作为方法(使用anahkiasen/Former opener方法)进行标准表单提交时,这很好用。

我在这里想念的是什么?

大多数浏览器无法发送PUT方法,仅限于GET和POST。

尝试将方法更改为POST,但将_method元素保留在data数组中以欺骗请求方法。