背景: ファイルをASP.NETバックエンドにアップロードするAngularJSフロントエンドがあります。私はAzureにデータを永続化しているカスタムMultipartStreamProviderを持っています。私が今持っている唯一の問題は、既存の角度のコードは、ファイルサイズを提出されていないということです、ここでは、コンテンツ配置ヘッダ角度アップロード、コンテンツ処理でファイルサイズを送信する必要があります
MyMultipartFormDataStreamProvider : MultipartStreamProvider
{
// ...
public override Stream GetStream(HttpContent parent, HttpContentHeaders headers)
{
// For form data, Content-Disposition header is a requirement
ContentDispositionHeaderValue contentDisposition = headers.ContentDisposition;
if (contentDisposition != null)
{
// create default filename if its missing
contentDisposition.FileName = (String.IsNullOrEmpty(contentDisposition.FileName) ? $"{Guid.NewGuid()}.data" : contentDisposition.FileName);
var size = contentDisposition.Size; // This is null right now!
}
}
}
との唯一のファイル名は、角度コードが
$scope.$watch('files', function (files) {
$scope.formUpload = false;
console.log(files);
if (files != null) {
for (var i = 0; i < files.length; i++) {
$scope.errorMsg = null;
(function (file) {
file.size = 25;
upload(file);
})(files[i]);
}
}
});
function upload(file) {
file.upload = Upload.upload({
url: window.location.origin + "/api/mydocs/uploadfile?clientFolder=" + $scope.attachmentFolder + "&clientId=" + $scope.clientId + "&userId=" + $scope.currentUser.UserId,
method: 'POST',
headers: {},
fields: {},
file: file
});
質問です :
コンテンツの配置ヘッダーにファイルサイズを含めるにはどうすればよいですか?
ありがとうございます!
angularjsへの質問タグを変更してください、角度のタグは好奇心、角度2+ – LookForAngular
@Dan Csharpsterのために使用されています。私は、Postmanからのリクエストの送信がSizeプロパティのnullを返すのと同じ問題を抱えています。 –
私は今、ハックを発行しました。ヘッダー:{}セクションでは、ファイル情報をキーにしてからfile.name + " - " + file.valueを入れました –