當(dāng)我們在使用第三方SDK開發(fā)是,不可避免的用到數(shù)據(jù)簽名。由于使用 urlencode 轉(zhuǎn)碼之后,空格會被轉(zhuǎn)碼成 + 號。
而 Java 或者其他的語言,它們的 urlencode 會把空格轉(zhuǎn)碼為 %20。很顯然 + 與 %20 是完全不相同的字符串。在進行 MD5 簽名生成的時候,很顯然簽名是不對等。
我們查閱 PHP urlencode 的文檔獲知,它存在歷史的原因,并未遵循 RFC3986 標(biāo)準(zhǔn)導(dǎo)致。所以,PHP 提供了另一個遵守 RFC3986 標(biāo)準(zhǔn)的 urlencode 方法:rawurlencode。
該方法與其他語言的 urlencode 方法保持一致的轉(zhuǎn)碼規(guī)則。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者





暫無評論,快來評論吧!