ASP.NET MVC(C#)アプリケーションがUploadifyを使用してSDK for .NETを使用してAmazon S3にファイルをアップロードしています。SDKおよびUploadifyを使用してAmazon S3にファイルをアップロードすると正しく表示されない
Uploadifyを使用して直接サーバーにファイルをアップロードすると、正常に動作します。ただし、Amazon S3 TransferUtility.Uploadメソッドを使用してファイルをアップロードすると、進行状況バーに100%の完了が素早く表示されますが、UploadifyのonComplete
イベントを取得するまでには長い時間待つ必要があります。私のコードは以下の通りです。
C#コード:
using (transferUtility = new TransferUtility(AWSAccessKey, AWSSecretKey))
{
try
{
TransferUtilityUploadRequest request = new TransferUtilityUploadRequest();
request.WithBucketName(AWSBucket)
.WithKey(folderKey)
.WithTimeout(5 * 60 * 1000)
.WithInputStream(uploadFileStream);
request.WithCannedACL(S3CannedACL.PublicRead);
transferUtility.Upload(request);
}
catch (AmazonS3Exception amazonS3Exception)
{
throw amazonS3Exception;
}
}
JavaScriptコード:私はそれを期待してるよう
jQuery(document).ready(function() {
var allowdfileext='*.doc;*.docx;*.pdf;'
var extarray=allowdfileext.split(';');
jQuery('#proposalUploadFile').uploadify({
'uploader': '/Content/uploadify/uploadify.swf',
'script': '/File/Upload',
'folder': '/uploads',
'buttonImg':'/Content/uploadify/upload-file.jpg',
'cancelImg': '/Content/uploadify/cancel.png',
'auto': true,
'height': '25',
'width': '95',
'wmode':'transparent',
'sizeLimit': '20971520',
'onComplete': fileUploaded,
'multi': false,
'scriptData': {
'saveToFolder': 'Temp',
'fileextension':'*.doc;*.docx;*.pdf;',
'subdomain':'qa','saveInLocal':'True'
},
'fileExt':'*.doc;*.docx;*.pdf;',
'fileDesc':'Files (*.doc;*.docx;*.pdf;)',
'onAllComplete': fileUploadCompleted,
'onError' : function(event, ID, fileObj, errorObj) {
var r = '<br />ERROR: ';
switch(errorObj.info) {
case 405:
r += 'Invalid file type.';
break;
case 406:
r += 'Some other error.';
break;
default:
r += 'Some other error.';
break;
}
}
});
});
なぜ進捗バーが更新されていませんか?