使用 angular-file-upload 模块收听 API 响应
Listen to API response using angular-file-upload module
我正在使用 AngulasJs 和 Django 构建一个 WebApp,我目前依赖 angular-file-upload 将图像上传到我的 api,就像这样:
var uploader = $scope.uploader = new FileUploader({
url: 'http://localhost:8000/image',
headers: { 'X-CSRFToken': $('input[name="csrfmiddlewaretoken"]').attr('value')
},
});
文件上传正常,但我一直无法弄清楚的是如何从 api 获得响应(我需要将一些数据插入 html)。我首先假设我可以使用 angular-file-upload 模块注册某种监听器,但我没有找到任何可以让我这样做的东西。
angular-file-upload 模块是否提供了执行此操作的方法,或者我是否需要依赖其他 angularjs 功能?
在此先感谢您的帮助!
使用 angular-file-upload-shim,您可以这样声明回调函数:
$scope.upload = $upload.upload({
url: 'rs/medias/upload',
method: 'POST',
file: file
}).progress(function (evt) {
}).success(function (data, status, headers, config) {
})
.error(function (data, status, headers, config){
});
感谢您的回答。
我可能不明白你的反应,但在我看来,使用 angular-file-upload 时,我无法使用此类回调。
根据 angular-file-upload https://github.com/nervgh/angular-file-upload/wiki/Module-API 的文档,没有定义回调来获得 api 成功答案。回调会在上传完成或失败时触发,但不会在 api 的响应到达时触发。
我想我可以使用 angular-file-upload 以外的其他方法,但自从我开始使用它以来,如果存在这种方法,我更愿意继续使用它。
我正在使用 AngulasJs 和 Django 构建一个 WebApp,我目前依赖 angular-file-upload 将图像上传到我的 api,就像这样:
var uploader = $scope.uploader = new FileUploader({
url: 'http://localhost:8000/image',
headers: { 'X-CSRFToken': $('input[name="csrfmiddlewaretoken"]').attr('value')
},
});
文件上传正常,但我一直无法弄清楚的是如何从 api 获得响应(我需要将一些数据插入 html)。我首先假设我可以使用 angular-file-upload 模块注册某种监听器,但我没有找到任何可以让我这样做的东西。
angular-file-upload 模块是否提供了执行此操作的方法,或者我是否需要依赖其他 angularjs 功能?
在此先感谢您的帮助!
使用 angular-file-upload-shim,您可以这样声明回调函数:
$scope.upload = $upload.upload({
url: 'rs/medias/upload',
method: 'POST',
file: file
}).progress(function (evt) {
}).success(function (data, status, headers, config) {
})
.error(function (data, status, headers, config){
});
感谢您的回答。
我可能不明白你的反应,但在我看来,使用 angular-file-upload 时,我无法使用此类回调。
根据 angular-file-upload https://github.com/nervgh/angular-file-upload/wiki/Module-API 的文档,没有定义回调来获得 api 成功答案。回调会在上传完成或失败时触发,但不会在 api 的响应到达时触发。
我想我可以使用 angular-file-upload 以外的其他方法,但自从我开始使用它以来,如果存在这种方法,我更愿意继续使用它。