上传图像到服务器angularjs(Upload image to server angularjs

2019-10-23 00:39发布

我需要上传从我的移动设备拍摄到我的服务器的图像。 我发现,这使得参考角上传库。 我需要做的是转换图像底座64,因为服务器是在那里我将与她一起工作邮寄到我的服务器。 而另一方面,从我的服务器发送和运行应用程序的工作吧。

var server = URL_BASE+'addView/';

var trustAllHosts = true;

var ftOptions = new FileUploadOptions();
ftOptions.fileKey = 'file';
ftOptions.fileName = $scope.imagen.substr($scope.imagen.lastIndexOf('/') + 1);
ftOptions.mimeType = 'image/jpeg';
ftOptions.httpMethod = 'POST';

console.log(ftOptions);

$cordovaFileTransfer.upload(encodeURI(server), $scope.imagen, ftOptions, trustAllHosts)
.then(function(result) {
  console.log(result)
}, function(err) {
  // Error
  console.log(err);
}, function (progress) {

});

Answer 1:

离子文件传输

我个人使用科尔多瓦文件传输从服务器上传和下载内容。

Base64编码

不知道在哪里存储图片,你如何找回它,但是,你可以指定该图像是使用Base64编码到HTML文件分隔符,或者你使用的画布,请参阅该职位的详细信息改变你的形象: https://开头stackoverflow.com/a/20285053/3687474



Answer 2:

您还没有指定什么你真的需要这样:在这里,你有一个工厂

//Factory you register on your module
angular
    .module('myApp')
    .factory('sendBase64Image', sendBase64Image)

function sendBase64Image($http) {
    var urlBase; //url to be filled in

    var base64 = {};
    base64.sendBase = function (baseImg) {
        var request = $http({
            method: "post",
            url: urlBase,
            headers: {
                'Content-type': 'application/json'
            },
            data : baseImg 
        });
    }
    return base64;
}

然后,您应该通过依赖注入注入到您的控制器和服务器进行呼叫。 如果你想要做的事有反应运用成功()方法来处理响应的承诺。



文章来源: Upload image to server angularjs