Как загрузить изображение с помощью angularjs

Я пытаюсь загрузить изображение с angularjs.

HTML:

<input type="file" id="picture" name="picture"/> <button class="btn btn-primary" ng-click="AddNew()" type="submit">Save</button> 

Controller.js

 $scope.AddNew=function(){ console.log(picture.files.item(0)); $scope.myobject.picture=picture[0]; $http({ url: 'http://localhost/mypro/resource', method: "POST", data: {'resource' : $scope.myobject }, headers: {'Content-Type': undefined }, transformRequest: angular.identity }) .then(function(response) { // success }, function(response) { // optional // failed }); }; 

Laravel 5.2:

routes.php

 Route::resource('resource','ResourceController'); 

контроллер:

 public function store(Request $request){ Log::info('request: '.print_r(Input::all(),true)); Log::info('request: '.print_r($request,true)); return array('success' => true); } 

Просто получить пустой массив здесь. И в консоли я получаю 500 (Internal Server Error).

Пожалуйста, расскажите мне, что я делаю неправильно.

Спасибо.

В порядке,

Я нашел решение, идя глубоко в SO.

Вот решение:

 var profile_pic=picture.files.item(0); var jsonData=$scope.myobject; $http({ url: 'http://localhost/mypro/resource', method: "POST", headers: {'Content-Type': undefined }, transformRequest: function (data) { var formData = new FormData(); formData.append("model", angular.toJson($scope.myobject)); formData.append("profile_pic", picture.files.item(0)); return formData; }, data: {'myobject' : jsonData,'profile_pic':profile_pic}, 

Thanx SO 🙂