Может ли быть так, что в сигнатурной части URL-адреса есть несколько символов, которые имеют особое значение в URL-адресах - %2B (+)
и %3D (=)
?
Я столкнулся с проблемой этих URL в некоторых видеоплеерах и решил ее, убедившись, что в URL нет этих персонажей. Это можно сделать, сгенерировав URL-адрес в цикле и добавляя секунду ко времени истечения каждый раз, чтобы гарантировать изменение подписи. Повторяйте, пока подпись не станет «действительной»
psuedocode:
loop
expiry = expiry + 1 second
create url with expiry
until url is valid
По моему опыту, для того, чтобы URL был действительным, требуется всего одна итерация.