我正在使用ionic和ngCordova相机插件调用我的相机,我在base64 formate中获取我的图像我不需要保存图像但我需要将图像发送到不作为base64。我需要将它作为文件格式发送有任何方式将图像作为文件发送给我支持的是c#。
这是我的html看起来像
<img ng-show="imgURI !== undefined" ng-src="{{imgURI}}">
<img ng-show="imgURI === undefined" ng-src="http://placehold.it/250x250">
<button class="button" ng-click="takePicture()">Take Picture</button>
我的app.js文件
$scope.takePicture = function(){
var options = {
quality: 50,
destinationType: Camera.DestinationType.DATA_URL,
sourceType: Camera.PictureSourceType.CAMERA,
allowEdit: true,
encodingType: Camera.EncodingType.JPEG,
targetWidth: 250,
targetHeight: 250,
popoverOptions: CameraPopoverOptions,
saveToPhotoAlbum: false,
correctOrientation:true
};
$cordovaCamera.getPicture(options).then(function(imageData) {
console.log(imageData);
$scope.imgURI = "data:image/jpeg;base64," + imageData;
}, function(err) {
// error
});
};
}, false);
在我的imageData中我有base64值是否有办法将$ scope.imgURI转换为文件,这样我就可以发送我的图像进行投放。
答案 0 :(得分:1)
为什么不使用Camera.DestinationType.FILE_URI
而不是Camera.DestinationType.DATA_URL
作为destinationType?
这样,您就可以在设备文件系统上获取文件;那么我想将该文件上传到您的服务器应该很容易......
然后,如果您不再需要该设备上的该文件,则可以将其删除。
如果你喜欢处理base64,你可以检查angular-base64-upload模块,它将base64数据上传到服务器......