[C#] 出現Base-64字元陣列無效長度

摘要:[C#] 出現Base-64字元陣列無效長度

常常會因為系統整合關係,需要設計一些代登入的機制

某些時候,可能會碰到url get的模式,ex:token

無論是採用哪種情況,免不了得都需要針對參數進行加密

但是在加密的過程中,可能未因為某些字元出現與url相衝突的keyword

假設某個字串加密後的值為"dTR+g8SjFY="

而代登入的URL為

http://localhost/auth.aspx?key=dTR+g8SjFY=

在此情的形況下,加密後的字串因為多了=字元,所以造成url get出現了錯誤

因此在解密的過程中就會出現Base-64字元陣列無效長度

為了避免此類情況,解決方法就是將加密後的資料,轉換為16進位表示即可

例如:

http://localhost/auth.aspx?key=e123f03h4a20

這樣在url get 後解密就不出問題了