Угловой файл загрузки пользовательских файлов сообщений http
Я использую nervgh/angular-file-upload для загрузки файлов. Как я знаю, эта угловая загрузка файлов имеет свои собственные функции загрузки.
В настоящее время мне нужны только файлы внутри uploader
, а затем я буду использовать мой собственный пост http
$scope.UploadUserFiles = function () {
$scope.UserFileRequest = {"File": uploader, "User": myUser}
$http.post(host + "/api/user", $scope.UserFileRequest).then(function (response) { });
}
В настоящее время у меня проблемы с получением этих файлов из uploader
так как я понятия не имею о свойствах и структуре. Но для User
мой собственный класс в веб-API, поэтому у меня нет проблем, чтобы получить любую информацию, которую я хочу.
Основная проблема в том, что я понятия не имею, как перехватить / инициализировать uploader
это в переменную после публикации в моем веб-API.
[HttpPost]
[Route("api/user")]
public UserFileResponse GetUserFile(UserFileRequest userFileRequest)
{
//What should I do to get the Files from the request and save into the server?
}
мой UserFileRequest
содержать информацию о myUser
, но я не знаю, что делать с uploader
так как у меня нет класса, чтобы держать это.
1 ответ
Из того, что я понимаю в вашем вопросе, у вас возникают проблемы с переносом файлов из очереди в вашу собственную функцию загрузки файлов.
Функции в классе FileUploader имеют обратные вызовы, которые вы можете использовать, но другой способ легко открыть очередь файлов - создать собственный обратный вызов после нажатия кнопки "Загрузить".
someFxn(item) {
console.log(item);
_someUploadFxn(item)
}
<md-button class="md-blue" ng-click="$ctrl.someFxn(item)" ng-disabled="item.isReady || item.isUploading || item.isSuccess">
Upload
</md-button>
Это позволит вам просмотреть файл, который был поставлен в очередь, и оттуда вы можете передать его или любые свойства, которые вам нужны, из этого файлового объекта в вашу собственную функцию загрузки.
То же самое касается, если вы хотите загрузить несколько файлов одновременно.