我在项目中使用 angularFileUpload 模块。它工作正常,但我想用我的文件发送附加数据,但我不能。
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
}
});
照片上传工作正常。但是当我使用$_POST['name']
收到数据时,这些数据不起作用。
答案 0 :(得分:1)
您在什么情况下使用$ _POST [' name']?
我可以看到您的代码和我的(工作)代码的唯一区别是我没有类型:' post',没有它就好了。
我有一个运行Express的nodejs后端。 Express将数据值传递到请求对象中的节点,然后通过req.body.name。
访问它您确定您的网址是否正确调用了您的后端?
答案 1 :(得分:0)
我找到了解决方案:
要使用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允许开发人员向服务器发送附加数据或表单数据。