Ajax 如何使用angularFileUpload发送附加数据
我正在项目中使用angularFileUpload模块。它工作正常,但我想用我的文件发送额外的数据,但我不能Ajax 如何使用angularFileUpload发送附加数据,ajax,angularjs,angular-file-upload,Ajax,Angularjs,Angular File Upload,我正在项目中使用angularFileUpload模块。它工作正常,但我想用我的文件发送额外的数据,但我不能 var uploader = $scope.uploader = Upload.upload({ url: 'api/photos/upload/propertyphoto', type:'post', data:{name:'my name'}, headers:{ csrf_token:CSRF_
var uploader = $scope.uploader = Upload.upload({
url: 'api/photos/upload/propertyphoto',
type:'post',
data:{name:'my name'},
headers:{
csrf_token:CSRF_TOKEN,
'X-XSRF-TOKEN':X_XSRF_TOKEN
}
});
照片上传工作正常。但是当我使用
$\u POST['name']
接收数据时,这不起作用 在什么情况下使用$\u POST['name']
我能看到你的代码和我的(工作)代码的唯一区别是,我没有一个类型:“post”,没有它似乎还可以
我有一个运行Express的nodejs后端。Express将数据值传递给请求对象中的节点,我通过req.body.name访问它
您确定您的url正确调用后端吗?我找到了解决方案:
要使用angularFileUpload发送其他数据或表单数据,您需要包含formData键
例如:
var uploader = $scope.uploader = new FileUploader({
url: 'api/photos/upload/propertyfeaturephoto',
type: 'post',
formData: [{mydata: 'this is my data'}],
headers: {
csrf_token: CSRF_TOKEN
},
success:function(resp) {
console.log(resp);
}
});
在这里,formData允许开发人员向服务器发送额外的数据或表单数据。哦,我使用PHP作为后端。因此,通过使用$\u POST,我只需检索表单数据。谢谢你的回复。我解决了:)在这里,我只是将formData附加到发送附加数据的请求
var uploader=$scope.uploader=new FileUploader({url:'api/photos/upload/propertyfeaturephoto',type:'post',formData:[{mydata:'this is my data'}],头:{csrf_令牌:csrf_令牌,'X-XSRF-token':X_XSRF_令牌},成功:函数(resp){console.log(resp);}};