我在以FormData
的形式传递图像和其他数据时遇到问题。
我尝试了以下不同方法:
var payload = new FormData;
和数据与
payload.append('fees', $scope.fees);
payload.append('lat', $scope.lat);
payload.append('lon', $scope.lon);
payload.append('mer_icon', preIconUrl);
$http.post("APIUrl",payload,{ headers: {'Content-Type': undefined}, transformRequest: angular.identity } ) .then(function(response) { console.log(" response: %j ",response); if (response.data.success == 1) { // success console.log("success 1 response: %j ",response); console.log("success 1 response.data: %j ",response.data); } else if (response.data.success == -1){ console.log("success 0 response.data: %j ",response.data); }else{ console.log("success 0 response.data: %j ",response.data); } }), function(response){ console.log(" fail response.data: %j ",response.data); }
当我使用浏览器控制台打印payload(FormData)
时,它可以工作。但是在image data(mer_icon)
的服务器端,我得到了undefined
。
2。用headers: { 'Content-Type': 'multipart/form-data'}
处理,会引发多部分边界错误。
3。没有标题的方法,与我在第一种方法中获得的undefined
在服务器端相同。