无法在Jquery / Ajax中调用Laravel路由

时间:2017-05-10 08:39:35

标签: php jquery ajax laravel laravel-5

我无法在laravel文件夹外调用laravel路线。

我的路线

 Route::resource('tmrate','WebServiceController');

我的控制器功能来获取和发布

  public function store(Request $request)
{
    Teamrating::create($request->all());
        return response()->json(['response'=>'true','message'=>'Rating Submitted','code'=>201],201);

}


public function show($id)
{
    $teamratings=Teamrating::find($id);
        return response()->json(['response'=>'true','message'=>'ratings found','data'=>$teamratings,'code'=>201],201);

}

当使用邮差击中laravel routes / url时,它可以正常工作

 http://localhost/saniservices/public/tmrate/10       for get

 http://localhost/saniservices/public/tmrate?requestid=2&clientid=1&propertyid=1&servicesheetId=1&serviceTypeId=1&serviceDate=2017-05-05&rating=5&reason=Best service&comment=Great services and workd&teamId=1      for post

现在我正在使用此代码

 <!DOCTYPE html>
 <html>

 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

 <body>

 <form  action="#" method="post" id="idForm">
    <input type="submit" value="Submit" id="submit">
 </form> 


  </body>

 <script type="text/javascript">



    $("#idForm").submit(function(){


        $.ajax({
                 url: 'http://localhost/saniservices/public/tmrate',
                 type: 'GET',
                 dataType: 'json',
                 data:{"id":1},
                 success: function (data) {
                     alert('success');

                 }

             });

      });



  </script>
  </html>

但是在这里我没有得到api的任何回复,我不知道为什么会如此,我已经尝试了很多但我没有得到任何回应

以上文件放在laravel安装之外。

1 个答案:

答案 0 :(得分:3)

问题是,ajax type指定的是:

type: 'GET',

并且在route.php中路由是:

Route::resource('tmrate','WebServiceController');

这里的类型是resource。将其更改为get,然后重试。