Stan Blog

學習過程中的一些記錄

[Ruby] URI.join 的雷

先說結論

多個參數時 , 參數後若沒有加斜線 “/” (slash) , 將不會被視為 folder , 會被略過 , 只吃最後一個參數


我們來測試一下

// host 後面加 3 個參數
URI.join("https://test.com", 'a', 'b', 'c').to_s

2018-08-20 23 51 52

a, b 被吃掉了

接著在 a 後面加上 slash

2018-08-20 23 55 55

a 出現了 !

a , b 都加 slash 的話

a

結果如下:

2018-08-20 23 59 00

下面這篇文章去挖 source code 探討了沒加 slash 被吃字的原因, 蠻詳細的, 有興趣可以看一下

Comments

comments powered by Disqus