[Ruby] URI.join 的雷
先說結論
多個參數時 , 參數後若沒有加斜線 “/” (slash) , 將不會被視為 folder , 會被略過 , 只吃最後一個參數
我們來測試一下
// host 後面加 3 個參數
URI.join("https://test.com", 'a', 'b', 'c').to_s
a, b 被吃掉了
接著在 a 後面加上 slash
a 出現了 !
a , b 都加 slash 的話
結果如下:
下面這篇文章去挖 source code 探討了沒加 slash 被吃字的原因, 蠻詳細的, 有興趣可以看一下