За последние 3 дня я застрял в том же выпуске подписи. Я не понимаю, как выйти из этого.Ошибка: Подписанная нами подпись запроса не соответствует подписи, которую вы предоставили. Проверьте свой ключ и метод подписи
Я пытаюсь получить предварительно подписанный URL с этим:
s3.getSignedUrl('putObject',
event.pre_signed_url =
{Bucket:config.awsBucket,Key:event.filename}
); in Node js.
И это предварительно подписали URL я использую, чтобы загрузить файл изображения в s3 ведре с помощью:
request({
method:'PUT',
url: event.pre_signed_url,
ContentType: 'image/png',
body: fs.createReadStream('./image.png')}
, function(err, res, body)
{ if(err)console.log(err); return callback(body); }
);
И файл успешно загружается в ведро s3, и я могу видеть его в консоли aws s3.
Проблема в том, что предварительно подписанный URL-адрес, который я получаю, если я пытаюсь использовать любой другой файл изображения, используя curl с терминала или пытающийся открыть URL-адрес в браузере, он дает мне ошибку с неправильной совпадением.
Прошу вас, если я ошибаюсь, или мое понимание с использованием заранее подписанного использования URL неверно.
Решено: Я был на самом деле делает запрос GET к URL вернулся из s3.getSignedUrl («putObject»), но для просмотра sceenshot в s3 ведро после загрузки я должен проверить назначенный url из s3.getSignedUrl ('getObject') для просмотра скриншота – learner
Это была моя проблема. Если вы хотите опубликовать это как ответ, я с радостью продолжу. – Gary99