2017-05-10 50 views
1

我無法在laravel文件夾外調用laravel路由。無法在Jquery/Ajax中調用Laravel路由

我的路線

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

我的控制器功能GET和POST

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路線/ 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安裝的外。

+0

您的瀏覽器開發工具是否顯示正在發出的請求?什麼是迴應?請求URL是否與參數一致? – Joe

+0

按方法類型POST提交表單。現在控制器期望它,但你仍然通過GET調用。 –

回答

3

的問題是,在指定ajaxtype是:

type: 'GET', 

和route.php的路線是:

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

這裏的類型是resource。將其更改爲get,然後重試。

+0

謝謝,我只是因爲它太簡單明瞭而不知所措。 –