0
您好我正在開發一個Web應用程序與api的API。我正在做文件上傳模塊。文件上傳完成後,我在返回對象時遇到問題。如何使用angularjs從web api控制器返回數據?
下面是我的API代碼來保存文件相關的數據到數據庫,如果它是succsfull我返回對象。
NCT_FileUpload obj = new NCT_FileUpload();
obj.file_path = uploadPath;
obj.user_id =9;
entityObject.NCT_FileUpload.Add(obj);
int result = entityObject.SaveChanges();
if (result == 1)
{
return Request.CreateResponse<NCT_FileUpload>(HttpStatusCode.OK, obj);
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.NotFound, "1");
}
這是我的angularjs代碼。
$scope.uploadFiles = function() {
$scope.uploading = true;
uploadService.uploadFiles($scope)
// then() called when uploadFiles gets back
.then(function (data) {
// promise fulfilled
$scope.uploading = false;
if (data === '') {
alert("Done!!!")
$scope.formdata = new FormData();
$scope.data = [];
$scope.countFiles = '';
$scope.$apply;
} else {
alert("Shit, What happended up there!!! " + data);
}
}, function (error) {
$scope.uploading = false;
//Server Error
alert("Shit2, What happended up there!!! " + error);
}
);
};
下面是angularjs
if (typeof response.data === 'string') {
return response.data;
} else {
return $q.reject(response.data);
}
在這裏,我想檢查與對象,而不是作爲字符串我的服務代碼。
我能夠保存數據在服務器,如果我把下面的代碼在API控制器我能夠顯示完成。但是我正在返回對象,所以我的數據不會爲空。目前我的錯誤功能正在執行。我想在成功函數中處理從api返回的對象。有沒有辦法做到這一點?任何幫助,將不勝感激。謝謝。
return new HttpResponseMessage(HttpStatusCode.OK) ;