0
我有一個c#web api方法,它返回的整數值爲HttpResponseMessage
,想要使用$ resource訪問AngularJs中的響應,How?
的Web API:
[HttpPut]
[Route("DeleteFile")]
public HttpResponseMessage DeleteFile(int cabinetFileID)
{
var fileName = cabinetDataAccess.GetFilePath(cabinetFileID);
var returnVal = cabinetDataAccess.DeleteCabinetFile(cabinetFileID, UserEmail);
return Request.CreateResponse(HttpStatusCode.OK, returnVal);
}
服務:
(function() {
'use strict';
angular
.module('data')
.factory('cabinetService', cabinetService);
cabinetService.$inject = ['$resource', 'serviceBase'];
function cabinetService($resource, serviceBase) {
var deleteCabinetFileResource = $resource(serviceBase + '/api/Cabinet/DeleteFile?cabinetFileID=:cabinetFileID',null,{'update':{method:'PUT'}});
return {
deleteCabinetFile: deleteCabinetFile
};
function deleteCabinetFile(cabinetFileID){
return deleteCabinetFileResource
.update({cabinetFileID:cabinetFileID},null)
.$promise;
}
}
}());
控制器:
function deleteThumbnail(cabinetFileID)
{
cabinetService
.deleteCabinetFile(cabinetFileID)
.then(function (data) {
//How do i Access my return value here ???
//Something like
if(data.returnVal === -1)
//do something
})
.catch(function (err) {
growl.err('Unable to delete file, Please try later !', {ttl: 20000});
})
}
此代碼讓我的反應,我怎麼需要訪問從返回值數據?
當你執行你的代碼,哪些包含數據到底是什麼? – Aliz
沒有它沒有這樣的工作。數據具有以下信息:資源{$ promise:r,$ resolved:true} $ promise:r_bitField:33554433_fulfillmentHandler0:(data)_promise0:undefined_receiver0:undefined_rejectionHandler0:Resource__proto__:r $ resolved:true__proto__:Resource – Srini
也許此鏈接可以幫助您:http://stackoverflow.com/questions/29071785/how-to-retreive-httpresponsemessage-filename-in-javascript – Aliz