首页 > 解决方案 > 当url有参数时错误'方法不允许'ajax jquery(Laravel)

问题描述

javascript 在调用 url 有参数时返回错误“方法不允许”。

HTML
1.- <a href="{{ URL::to('acceso', ['option'=>'1']) }}">Acceso</a>
2.- <a href="{{ URL('acceso') }}">Acceso 2</a>

第一个选项返回错误。第二种选择效果很好。

这是路线:

Route::get('/acceso/{option?}', function ($option = '') {   
   return view('acceso_Usuario')->with('option', $option);
});

Route::post('call', 'example_Controller@function_example');

这是控制器:

class example_Controller extends Controller
{
   public function function_example(Request $request)
   {
       if ($request->ajax()) {

           return response()->json([
           ]);

       }
   } 
}

这是javascript

$(document).ready(function() {
    var route = "call";
    var token = $("#token").val();

    var parameters=
    {
    };

    $.ajax({
        url: route,
        headers: {'X-CSRF-TOKEN': token},
        type: 'post',
        dataType: 'json',
        data: parameters,
        contentType: 'application/x-www-form-urlencoded',
        success: function (data) {

        },
        error: function (msj) {
            alert("Error Ajax);
        }
    });

 });

可以帮助我的人!:)

标签: jqueryajaxlaravel

解决方案


您的 javascript 正在发出 POST 请求,但匹配的路由被定义为只允许 GET、HEAD 请求 ( with Route::get())。


推荐阅读