Мне нужно получить предварительный просмотр файла из Amazon s3, но я не могу использовать имя в качестве ключа.Есть ли другая функция или альтернативное решение для использования другого уникального ключа?
Причина, по которой я не могу использовать имя файла в качестве ключа, заключается в том, что я интегрировал функции загрузки, загрузки и предварительного просмотра из другой системы с использованием Javascript SDK.Теперь, когда мне нужно просмотреть его, имя файла со специальными символами не кодируется.И мы не можем гарантировать, какие специальные символы пользователь использует в своих именах файлов.И все методы кодирования Javascript проигрывают тем или иным специальным символам.Следовательно, было бы лучше использовать другой ключ вместо имени файла.Пожалуйста помоги.
Ниже приведен код, который я использую в настоящее время.
AWS.config.update(
{
accessKeyId: accessKey,
secretAccessKey: secretKey,
region_config: bucketRegion
}
);
var s23 = new AWS.S3();
var y=vars['name']; //here i am getting filename in the URL.
var dec = decodeURI(vars['name']);
var params = {Bucket:bucketName, Key: dec};
s23.getSignedUrl('getObject', params, function (err, url) {
if(!err){
window.open(url);
}
else {
console.log('error on preview ::',err);
}
});