我有一个调用js脚本
setInterval(function(){
$.get( "/fetch-data", function( data ) {
console.log(data);
});
},1000);
我的路线看起来像这样
Route::get('/fetch-data', 'PageController@fetchData');
我的控制器方法
public function fetchData()
{
$results_array = [];
$file = new \SplFileObject('file.csv');
$file->setFlags(\SplFileObject::READ_CSV);
foreach ($file as $row) {
$results_array[] = $row[0];
$results_array[] = $row[1];
$results_array[] = $row[2];
$results_array[] = $row[3];
...
}
return response()->json($results_array);
//$json = response()->json($results_array);
//return view('view.blade',compact($json));
}
请注意,使用return response()->json($results_array);
时,原始json文本将直接显示在页面上。不是我想要的。
虽然return view('view.blade',compact($json));
返回整个html文件。仍然不是我想要的。
我想要实现的是从控制器返回的原始json文本将从调用js脚本传递给回调。
有什么想法吗?
答案 0 :(得分:0)
代码按预期工作。
setInterval(function(){
$.get( "/fetch-data", function( data ) {
// code now works
});
},1000);
这个问题是answered HERE already。