无法将图像文件从 ng-file-upload 上传到网络 api
Can't upload image file from ng-file-upload to web api
我正在使用此指令 (ng--file-upload) 上传图片。
我需要将图像文件包含到 POST
到 ASP.NET Web API 但我没有成功。
这是我在服务器上的方法:
public async Task<HttpResponseMessage> SaveData([FromBody]PostModel data)
当我 post 数据(来自 js angular)时,除了上传的文件外,所有数据都在这里:
$http({
method: 'POST',
url: path,
data: data,
file: photoFile
}).then(function...
我也尝试将其放入数据中,但它始终为空。
我如何 post 并在网络上获取图像文件 api?
我收到的回复是:
"Invalid 'HttpContent' instance provided. It does not have a content type header starting with 'multipart/'.
Parameter name: content"
这一行:
var provider = new MultipartMemoryStreamProvider();
await Request.Content.ReadAsMultipartAsync(provider);
var data = {
"Username": $scope.username,
transformRequest: angular.identity,
headers: { 'Content-Type': undefined }
};
var fd = new FormData();
fd.append('file', $scope.photoFile);
$http({
method: 'POST',
url: 'path', fd,
data: data
}).the
使用FormData API:
html:
<div class="button" ngf-select="upload($file)">Upload on file select</div>
控制器:
$scope.upload = function (file) {
var fd = new FormData();
fd.append('file', file);
//Append other data
//angular.forEach(data,function(v,k){
// fd.append(k,v);
//});
$http.post('your-upload-url', fd, {
transformRequest: angular.identity,
headers: {'Content-Type': undefined}
})
.then(function(res){
// get upload res
});
};
我正在使用此指令 (ng--file-upload) 上传图片。
我需要将图像文件包含到 POST
到 ASP.NET Web API 但我没有成功。
这是我在服务器上的方法:
public async Task<HttpResponseMessage> SaveData([FromBody]PostModel data)
当我 post 数据(来自 js angular)时,除了上传的文件外,所有数据都在这里:
$http({
method: 'POST',
url: path,
data: data,
file: photoFile
}).then(function...
我也尝试将其放入数据中,但它始终为空。
我如何 post 并在网络上获取图像文件 api?
我收到的回复是:
"Invalid 'HttpContent' instance provided. It does not have a content type header starting with 'multipart/'.
Parameter name: content"
这一行:
var provider = new MultipartMemoryStreamProvider();
await Request.Content.ReadAsMultipartAsync(provider);
var data = {
"Username": $scope.username,
transformRequest: angular.identity,
headers: { 'Content-Type': undefined }
};
var fd = new FormData();
fd.append('file', $scope.photoFile);
$http({
method: 'POST',
url: 'path', fd,
data: data
}).the
使用FormData API:
html:
<div class="button" ngf-select="upload($file)">Upload on file select</div>
控制器:
$scope.upload = function (file) {
var fd = new FormData();
fd.append('file', file);
//Append other data
//angular.forEach(data,function(v,k){
// fd.append(k,v);
//});
$http.post('your-upload-url', fd, {
transformRequest: angular.identity,
headers: {'Content-Type': undefined}
})
.then(function(res){
// get upload res
});
};