天天看點

優酷url的encode與decode

以前在優酷上看到一個關于微軟的視訊,感覺不錯。但是是以前無意中看到的,現在唯一能找到的痕迹是一個殘缺的url-1,​​https%253A%252F%252Fv.youku.com%252Fv_show%252Fid_XMzc4NDA%253D.html​​,當然把這個url粘貼到browser的位址欄中是無效的,不會跳轉到相應的頁面上。

但我還不想這點困難就難倒我了,于是開始嘗試找方法。我之前無意中知道有url編碼和解碼的東西,也就是encode和decode,想到這裡,我于是想到百度一下看能不能找到線上url編碼和解碼工具,把url-1還原成播放視訊的頁面位址,但是在網上找了幾個線上工具之後,都沒有成功。不知道是我方法不對,還是什麼。用了線上工具之後,得到的新的url變得複雜了,甚至比原來的url更長。于是就放棄了使用線上工具的方法。

決定換個思路。我先找到一個可以播放視訊的網頁url-2: ​​https://v.youku.com/v_show/id_XMzgyODkxNzIxMg.html​​,然後拿url-2和url-1做對比,看能不能把正确的url拼出來,結果很好,我得到關于微軟的視訊的播放的url,厲害了,哈哈。

思路如下:經過對比發現url-1中的%253A對應的是url中的:,%252F對應的是url中的/,兩個%252F就是對應兩個//,至于%253D我第一眼沒有看出來是什麼。但是我可以确定這個字元串不可能是/,也不可能是.,因為/對應的是%252F,.顯示的還是.,沒有變化,和字母一樣,都是以本身原來的形式顯示;同時這個字元串對應的視訊id的一部分,因為以前也經常在優酷上看視訊,是以基本上知道視訊的id除了字母之外就是=号了,可能是有id有1個=号,有的id有2個=号,于是我猜想%253D會不會是=号呢?于是就試了一下,把我得到的新的url: ​​https://v.youku.com/v_show/id_XMzc4NDA=.html​​​粘貼到browser的位址欄中,然後回車,發現竟然被我猜對了,竟然找到了,就是我以前看過的視訊。然而到這裡我并沒有停下腳步,而是選擇繼續探索。探索什麼呢,因為我突然意識到url-2中有兩個=号,是不是我得到的新的url中後面添加一個=号也可以通路頁面呢?于是我緊接着就試了一下,結果被我猜對了,确實可以通路。于是我推廣了一下思路,又加了一個=号,也就是說現在的url中有3個=号了,是不是還可以成功通路呢?想到這裡,立即把url粘貼到browser的位址欄中,發現真的可以通路,于是再繼續嘗試,發現後面有4個、5個=号等等都可以通路。又想到既然=号的數量差別不大,其實在這個時候,=号的數量根本沒有差別了,不管是1個、2個等都可以通路頁面,然後想到沒有=号,也就是說如果數量為0個呢,變成了這個url: ​​https://v.youku.com/v_show/id_XMzc4NDA.html​​還可以通路嗎?經過額測試,發現沒有=号也可以通路。真是醉了,哈哈。

至此為止吧,主要是娛樂,哈哈。實用性不大。