2009-05-06 20 views

回答

5

它可能是一個GUID的修改後的Base 64表示。 (Common Base 64實現包括URL的問題字符)。

+0

似乎很可能。它可能是GUID的Data4部分(即`XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX`表示的最後2個段),它是8個字節,給出11char base64表示(url安全變體) – mykhal 2012-09-29 12:40:25

3

他們使用此ID來防止人們通過簡單地遞增數字來種田/發送視頻。

1

我見過至少有一個帶有「_」的下劃線。這讓我感到驚訝...因爲我已經假設了Piskvor相同的正則表達式...直到現在...

+1

yap ..例如:https://www.youtube.com/watch?v=ivjPQZ_3-xM – 2016-01-18 10:27:19

25

它被修改的base64作爲Ishmael猜測。正常Base64是[a-zA-Z0-9 \ + \ /] [=] *。也就是說,數字包含A-Z,a-z,0-9,+或/,並在末尾填充0,1或2「=」。 YouTube似乎跳過了填充(比如用於MIME的UTF-7 Base64),並且由於URL和+//構成的問題分別被替換爲 - 和_。

因此,YouTube ID應該符合REGEXP:/ [a-zA-Z0-9 \ -_] + /或/ [\ w \ - ] + /(因爲\ w是[A- Za-z0-9_])

我在一個動態的YouTube SWFObject加載器實現中使用它,它工作正常。我在YouTube ID中觀察到了 - 和_,但從未使用任何其他非字母數字字符。更多的Base64信息可以在維基百科找到:URL applications of Base64

祝你好運!

相關問題