Javascript 在服务器上进行图像捕获和上载,并从服务器获取不在angular js和ionic模式下工作的图像
我想捕获图像,捕获后应将其上载到服务器,并希望从服务器获取图像,并希望将其显示在一个位置,即Javascript 在服务器上进行图像捕获和上载,并从服务器获取不在angular js和ionic模式下工作的图像,javascript,angularjs,ionic-framework,ngcordova,Javascript,Angularjs,Ionic Framework,Ngcordova,我想捕获图像,捕获后应将其上载到服务器,并希望从服务器获取图像,并希望将其显示在一个位置,即$scope.pictureUrl=”http://placehold.it/100x100“。类似地,我想从图库中选择图像并希望上载到服务器,但我的代码不起作用。 下面是我的代码。我已经在stackoverflow上提出了许多关于这方面的问题,但都是徒劳的。它会发出成功警报,但当我看到我的服务器时,它不会显示任何上传的图像。请建议我更改 $scope.pictureUrl = "http://pla
$scope.pictureUrl=”http://placehold.it/100x100“
。类似地,我想从图库中选择图像并希望上载到服务器,但我的代码不起作用。下面是我的代码。我已经在stackoverflow上提出了许多关于这方面的问题,但都是徒劳的。它会发出成功警报,但当我看到我的服务器时,它不会显示任何上传的图像。请建议我更改
$scope.pictureUrl = "http://placehold.it/100x100";
$scope.pictureUrl2="http://placehold.it/100x100";
$scope.takePicture = function () {
var options = {
destinationType: Camera.DestinationType.DATA_URL,
sourceType: Camera.PictureSourceType.CAMERA,
encodingType: Camera.EncodingType.JPEG
};
$cordovaCamera.getPicture(options).then(function (imageData) {
//console.log('camera data: ' + angular.toJSON(imageData));
$scope.imgdata = imageData;
$scope.pictureUrl = 'data:image/jpeg;base64,' + imageData;
// var image = document.getElementById('myImage');
var url = '';
var fd = new FormData();
//previously I had this
//angular.forEach($scope.files, function(file){
//fd.append('image',file)
//});
fd.append('image', $scope.imgdata);
$http.post(url, fd, {
transformRequest: angular.identity,
headers: {
'Content-Type': undefined
}
})
.success(function (data, status, headers) {
$scope.pictureUrl2 = data.resource_uri; //set it to the response we get
alert("Success");
})
.error(function (data, status, headers) {
})
});
}
$scope.takePhoto = function () {
var options = {
destinationType: Camera.DestinationType.DATA_URL,
sourceType: Camera.PictureSourceType.SAVEDPHOTOALBUM,
encodingType: Camera.EncodingType.JPEG
};
$cordovaCamera.getPicture(options).then(function (imageData) {
$scope.imgdata=imageData;
$scope.pictureUrl = 'data:image/jpeg;base64,' + imageData;
//$scope.blobImg = dataURItoBlob($scope.pictureUrl);
window.alert("Picture Captured .. !!");
}, function (err) {
window.alert('Error:' + err.message);
});
};
插件安装正确。摄像头和多媒体资料正在启动,但无法上载:(实际上,您正在使用目标类型作为
destinationType:Camera.destinationType.DATA\u URL,
因此,在图像数据中,只包含base64值,所以您可以将该值指定给对象,并可用于post方法
当您试图从服务器获取base64的数据时
'data:image/jpeg;base64,+imageData;
(注意这里imageData是包含base64字符串的变量)
通过这种方式,我们可以显示来自服务器的图像“图像捕获和上载到服务器上,并从服务器获取不在angular js和ionic模式下工作的图像”-这其中的哪一部分不起作用?你能将其分解并尝试一次只做一件事吗?好的,如果我想分解..那么上传部分在从相机捕获图像后不起作用。它显示成功,但实际上没有上传server@SiddheshKalgaonkar你是用base64格式发送图像吗?我不是用base64格式发送图像base64格式我想要的是,在捕获两个图像之后,它应该被发送到服务器,在获取图像之后,一个图像应该被放置在
$scope.pictureurl
中,另一个应该被放置在$scope.pictureurl2