Простой загрузчик с использованием AngularJs (с реализацией CORS)

В последнее время мне пришлось написать простой загрузчик (с возможностью повторного использования) с помощью AngularJs, сохраняя мой API в отдельном месте и, наконец, написал один, используя blueimp jQuery File Uploader и сделал лил, настраивая его. Я подумал, что было бы здорово поделиться этим и, надеюсь, улучшить себя в обучении в AngularJs. (Я добавил ответ)

Ответ 1

http://codelikeapoem.com/2013/05/angularjs-tutorial-4-file-upload-using.html (Вы можете загрузить весь код)

App.Coffee

@angTut = angular.module("angTut", ['LocalStorageModule', 'ngResource', 'uploaderComponent']);

@angTut.constant('uploadServiceUrl', 'http://192.168.0.2/api/index.php')

todos_uploader_controller.coffee

"use strict"
@angTut.controller('TodosUploadController', (
$scope, uploadService
) ->

$scope.uploadLayer = (e, data, process) ->
    $scope.uploadReturn = uploadService.process(e, data, process)
    $scope.uploadReturn = uploadService.initialize() 
)

uploader.directive

https://gist.github.com/sk8terboi87/5652187

upload.html

    <div class="control-group">
      <input id="testUpload" type="file" fileupload name="files[]" uploadurl="uploadReturn.uploadurl" done="uploadLayer(e, data, 'done')" fail="uploadLayer(e, data, 'fail')" progress="uploadLayer(e, data, 'progress')">
       <div class="well" ng-show="uploadReturn.status">
       {{uploadReturn.message}}
        <div ng-show="!uploadReturn.error">
            <p class="label label-info">File: {{uploadReturn.successData.name}}</p>
            <p><a href="{{uploadReturn.successData.fullUrl}}" target="_blank">View file</a></p>
        </div>
       </div>
   </div>