URL getObject AWS s3 без указания имени файла в качестве ключа JS SDK - PullRequest
0 голосов
/ 27 сентября 2019

Мне нужно получить предварительный просмотр файла из 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);
                }
            });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...