angular页面将图片上传到图片服务器,出现了跨域问题
//angular页面所在的域名是:http://dev.1-1dr.com
var testObj = angular.module('testApp',['angularFileUpload']);
testObj.controller("testCtr",function($scope,$upload){
$scope.title = "测试文件上传";
$scope.fileInfo = file;
$upload.upload({
//服务端接收
url: 'http://upload.1-1dr.com/fileupload',
//上传的同时带的参数
data: { 'username': 'test'},
file: file
}).success(function (data) {
//上传成功
console.info(JSON.stringify(data));
}).error(function (data, status, headers, config) {
//上传失败
console.log('error status: ' + status);
});
}
});
XMLHttpRequest cannot load http://upload.1-1dr.com/fileupload. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://dev.1-1dr.com' is therefore not allowed access.
按照CORS的解决方法,服务器端响应添加了
Access-Control-Allow-Origin
头,但问题还是没解决。想问,是不是angular在上传文件的请求中,也需要带一些参数,才能解决跨域问题?
没有那么一回事,我认为还是你后端在设置CORS没有把你相应的域名写上,或者直接
*
来表示任何域名都可以。