Tôi tò mò loại ID mà youtube sử dụng để xác định video của họ? Chúng dường như là cùng một loại ID được sử dụng cho các url ngắn trên các trang web như Digg và Bit.ly.YouTube sử dụng loại ID nào cho video của họ?
Trả lời
Đây có thể là bản sửa đổi cơ sở 64 của GUID. (Common Base 64 triển khai bao gồm các ký tự vấn đề cho URL).
Họ sử dụng ID này để ngăn mọi người nuôi/gửi spam video bằng cách tăng số lượng đơn giản.
Tôi đã xem ít nhất một dấu gạch dưới có dấu "_" trong kết hợp. Điều làm tôi ngạc nhiên ... vì tôi đã giả định cùng một cụm từ như Piskvor ... cho đến bây giờ ...
yap .. ví dụ : https://www.youtube.com/watch?v=ivjPQZ_3-xM –
Nó đã được sửa đổi base64 như Ishmael đã đoán. Base64 bình thường là [a-zA-Z0-9 \ + \ /] [=] *. Tức là, các số chứa A-Z, a-z, 0-9, +, hoặc/và được đệm bằng 0, 1 hoặc 2 "=" ở cuối. YouTube dường như bỏ qua phần đệm (như UTF-7 Base64 cho MIME) và do các vấn đề về + và/đặt ra cho URL, - và _ được thay thế tương ứng.
Do đó, ID YouTube phải khớp với REGEXP:/[a-zA-Z0-9 \ -_] +/hoặc/[\ w \ -] +/(chúng tương đương vì \ w là [A- Za-z0-9_])
Tôi sử dụng tính năng này trong trình triển khai bộ tải SWF SWFObject động và nó hoạt động tốt. Tôi đã quan sát cả hai - và _ trong ID YouTube nhưng không bao giờ có bất kỳ ký tự không phải chữ số-alpha nào khác. Bạn có thể tìm thêm thông tin Base64 trên Wikipedia: URL applications of Base64
Chúc bạn may mắn!
dường như có khả năng xảy ra. nó có thể là phần Data4 của GUID (tức là 2 đoạn cuối của đại diện 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'), là 8 byte, cho biểu diễn 11 bit base64 (biến thể an toàn url) – mykhal