我在對angularjs其前端和使用laravel 5作爲後端應用程序的工作。我試着上傳文件,但在控制檯中,響應是一片空白。ErrorException以.php - 響應將返回空白
這是我在角控制器,處理文件
vm.makeFile = function(newFile){
vm.shipmentObject.files=[];
vm.newDateFile= new Date();
vm.newDateFile = $filter('date')(vm.newDateFile, "yyyy-MM-dd h:mm:ss");
vm.shipmentObject.files.push({
"id":23,
"shipment_id":43,
"user_id":20,
"date":vm.newDateFile,
"file": "vm.shipmentObject.file",
"fileName":"aguacate",
"fileType":"jpg",
"status":"I"
});
ShipmentResource.insertFile({files:vm.shipmentObject.files}).success(function(response){
console.log(response);
console.log("FILE INSERTED CORRECTLY");
});
console.log(vm.shipmentObject.files);
};
這是我在laravel控制器處理該文件
public function makeFile(Request $request)
{
if(isset($request->files) && is_array($request->files)){
$fileArray=[];
foreach($request->files as $key=>$fileEntity){
$file= new File();
$file->file=$fileEntity['file'];
$file->shipment_id=$fileEntity['shipment_id'];
$file->user_id=$fileEntity['user_id'];
$file->date=date('Y,m,d,G,i,s');
$file->fileName=$fileEntity['fileName'];
$file->fileType=$fileEntity['fileType'];
$file->status=$fileEntity['status'];
$file->save();
array_push($fileArray, $file);
}
}
return response()->json();
}
這樣一來,控制檯日誌中打印瀏覽器:
.一種空白響應, 在laravel控制器的端部,如果我改變這種
返回響應() - > JSON()
此
返回響應() - > JSON($ fileArray)
的響應是500錯誤
ErrorException在ShipmentController.php線132:未定義變量: fileArray在ShipmentController.php線132在 HandleExceptions->的HandleError( '8', '未定義變量:fileArray', 「C:\ XAMPP \ htdocs中\ zignyWS \應用\ HTTP \控制器在ShipmentController.php 線\ ShipmentController.php」, '132',陣列( '請求'=>對象(請求)))132
的線132是這樣的一個 - >返回響應() - > JSON($ fileArray)
我不知道在哪裏的proble m是,它可能是因爲所發送該請求的方法是什麼?
我認爲這個問題其在後端側...
我卡在這,在那之後我需要顯示的應用程序如果一個PDF文件,只添加驗證上傳XLS,PDF和DOC文件,但請幫我這個空白響應發行第一
更新
的成功方法已經過時了。我建議將其更改爲則()。 - Mike Feltman
它現在改變了。它看起來像這樣
ShipmentResource.insertFile({files:vm.shipmentObject.files})
.then(function(response){
console.log(response);
console.log("FILE INSERTED CORRECTLY");
console.log(response);
console.log(vm.shipmentObject.files);
}, function(err){
console.log(err);
});
vm.shipmentObject.newFile="";
console.log(vm.shipmentObject.files);
};
不推薦使用成功方法。我建議將其更改爲則()。 –
現在改變了。它看起來像這樣 \t \t \t \t ShipmentResource.insertFile({文件:vm.shipmentObject.files}) \t \t \t \t。那麼(功能(響應){ \t \t \t \t \t的console.log(響應); \t \t \t \t \t的console.log( 「FILE正確插入」); \t \t \t \t \t的console.log(響應); \t \t \t \t \t console.log(vm.shipmentObject.files); \t \t \t \t},函數(ERR){ \t \t \t \t \t的console.log(ERR); \t \t \t \t}); \t \t \t \t vm.shipmentObject.newFile =「」; \t \t \t \t \t console.log(vm.shipmentObject.files); \t \t \t}; –
,但它一直在ShipmentController.php 132行中返回此錯誤ErrorException: 未定義的變量:fileArray @MikeFeltman –