2017-09-05 20 views
0

AngularJS形式の画像をアップロードする必要があります。しかし私はLaravelでそれを受け取る方法を知らないので、それを送ってください。私はここにサービスを利用アップロード画像Laravel without form AngularJS

<input type="file" name="file" accept="image/jpeg, image/png" id="file" ng-model="data.image"> 


$('input[type=file]').change(function() { 
    $scope.img = this.files[0]; 
    var filePath = $("#file").val(); 
    var reader = new FileReader(); 
    reader.onload = function (e) { 
     $('#image').attr('src',e.target.result); 
     $scope.img["imgbase64"] = e.target.result; 
    }; 
    reader.readAsDataURL(this.files[0]); 
}); 

 var imgSend = new FormData(); 
     imgSend.append("file",$scope.img); 
     data["image"] = imgSend; 
      url = "maquinas"; registroMaquinaServices.servicesRegistroMaquinaPost(url,data).then(function(promise){ 
        var requests = promise.data.response; 
        console.log(requests); 
       }) 

私はlaravelにこれを送信してい 私のコードはこれです。

enter image description here

感謝。

あなたがアップロードする画像ファイルを処理するために https://github.com/ghostbar/angular-file-model を使用することができ、その後、フォームオブジェクトを作成し、定期的にアップロードされたファイルなどの画像ファイルを取得することができるようにあなたlaravelサーバーに送信することができるようになります
+0

チェックこのリンクhttps://stackoverflow.com/questions/18571001/にされていますfile-upload-using-angularjs –

答えて

0

ない base64でエンコードされたもの。 これは私が例では、サーバに送信する必要のあるデータのすべてをそう を行うために使用するコードは$scope.data変数

$http({ 
    headers: { 
     'Content-Type': undefined //undefined value is on purpose 
    }, 
    method: method, 
    url: url, 
    data: $scope.data, 
    transformRequest: function(data, headersGetter) { 

     var formData = new FormData(); 

     angular.forEach(data, function(value, key) { 
      formData.append(key, value); 
     }); 

     return formData; 
    } 
}) 
関連する問題