EvaporateJS: всегда получайте ошибку 403 SignatureDoesNotMatch после возобновления загрузки
Я использую EvaporateJS в полном соответствии с официальной документацией и примерами. Моя серверная программа правильно работает для подписи v4, и многокомпонентная загрузка выполняется правильно.
Но у меня проблема с функциями паузы и возобновления. Когда я приостанавливаю загрузку, после ее возобновления первый запрос PUT всегда получает403 (SignatureDoesNotMatch)
ошибка.
После небольшого исследования кажется, что причина в том, что библиотека отправляет неправильныйstringToSign
на сервер для входа с первой попытки после возобновления.
это последнееstr_to_sign
перед паузой
AWS4-HMAC-SHA256
*20220608T114339Z*
20220608/default/s3/aws4_request
**b45c4ca1a7c7744ea2f3b6507bd3452317773cf30b860f4d98de662b8f7a85b6**
Это первый str_to_sign после возобновления
AWS4-HMAC-SHA256
*20220608T114345Z*
20220608/default/s3/aws4_request
**b45c4ca1a7c7744ea2f3b6507bd3452317773cf30b860f4d98de662b8f7a85b6**
Как вы можете видеть выше, время было изменено, но значения canonicalRequest остались прежними.