我有这样的路线 -
Route::put('avote', 'voteController@avote')->middleware('auth');
我想从ajax发送请求访问此路由。
当我使用此代码时 -
$data = {/* some data here */};
$.post("/avote", $data, function(result) {
$('#avote h2').html(result);
$('#avote a span').css('color', 'orange');
$('#avote a span').unwrap();
});
我收到错误method not allowed
。我知道这是我使用的方法的问题(使用post not put)
我的问题是,有什么方法可以使用ajax或任何其他脚本从/avote
获取信息吗?
请不要建议我将路由请求从put
更改为post
或保护/avote
路径的任何其他方式
我使用
Route::put()
因为我在路由控制器中有数据库更新功能
答案 0 :(得分:2)
转到$.ajax()
函数而不是$.post
并提供method
(type
)属性:
$.ajax({
url: "/avote",
data: $data,
method: "PUT",
// or type: "PUT", if your jquery version is prior to 1.9
success: function(result) {
$('#avote h2').html(result);
$('#avote a span').css('color', 'orange');
$('#avote a span').unwrap();
}
});