验证一个文件是否存在
需要在项目中,去验证一个件是否存在。
C#中可以使用File.Exists(physical path)
你也可以在API接口中写一个异步方法:
public async Task<bool> FileIsExists(JObject jObj) { var jsonStr = JsonConvert.SerializeObject(jObj); var jsonParams = JsonConvert.DeserializeObject<dynamic>(jsonStr); string physicalPath = physical(jsonParams.FileName); return await Task.FromResult<bool>(File.Exists(physicalPath)); } private string physical(string fileName) { return HttpContext.Current.Server.MapPath("~/Temp/") + fileName; }
这样在前端angularjs去呼叫接口方法:
$scope.fileIsExists = function (file) { var result = false; var arg_f = {}; arg_f.FileName = file; $http({ method: 'POST', url: '/api/IoSvc/FileIsExists', dataType: 'json', headers: { 'Content-Type': 'application/json; charset=utf-8' }, data: JSON.stringify(arg_f), }).then(function (response) { result = response.data; }); return result; };
其实,还有另外一种方法,更加简单进行对文件判断是否存在:
$scope.fileExists = function (file) { var url = '/Temp/' + file; var request = new XMLHttpRequest(); request.open('HEAD', url, false); request.send(); return request.status == 200 ? true : false; };