2017-09-22 136 views
0

HTTP狀態碼「0」無效。HTTP狀態碼「0」無效

public function filter() 
{ 
$institute = (new Institute)->newQuery(); 
$institute->with(['locations','courses' => function ($query) use ($request){ 
      $query->with('trainers'); 
     }]); 
} 
$data = $institute->get(); 
if(count($data) > 0) 
{ 
    return response()->json($data); 
} 
else 
{ 
    return response()->json(404,'No Data found'); 
} 
} 

其實,我想顯示錯誤消息,404如果沒有數據,

我的問題是,當我嘗試檢查數據是否存在與否我得到叫InvalidArgumentException.Can錯誤任何人都可以幫忙。

+0

你能粘貼你收到的完整錯誤? –

+1

是不是'response() - > json([],404)'?第一個參數應該是數據。 – okante

回答

3
return response()->json(404,'No Data found'); 

json的第一個參數應該是數據,然後是狀態碼。在這種情況下,狀態碼獲得0值。簡單地做到這一點如下:

return response()->json('No Data found', 404); 
+0

我認爲它應該是'response() - > json($ data,404)' – okante

+0

哦,是啊!你寫了,我混淆了他們的立場。 –

+0

在我的情況下,我試圖得到異常錯誤代碼,並傳遞它,如'$ e-> getCode()'什麼是愚蠢的:/以防萬一有人做了相同的... –