微信小程序 Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded(二)

今天來接着上篇博客的說,因爲這個問題,是由上篇問題處理之後發生的問題,我自己都不知道說啥好了,原因:不細心造成的

我要做的功能是根據後端返回的openid  session_key  2個值,來獲取手機號,然而手機號是密文,我需要獲取明文,這就需要解密啦,於是百度手機號解密問題,就出現了cryptojs解密工具類,一個大牛封裝的,一般前端都會用這個用來解密,地址如下:

https://github.com/gwjjeff/cryptojs

我們主要通過wx.getUserInfo(OBJECT) 微信官方的這個獲取用戶信息的方法,需要對接口返回的加密數據( encryptedData )進行對稱解密。

這個之前也寫過這個,於是就那上個小程序中的工具類,複製 粘貼 完事,以爲不會出問題,畢竟都已經寫過了,萬萬沒想到的是

導致了下面的問題:

一下子懵逼了,明明一樣的代碼啊,咋回事?於是百度,沒有發現什麼值得的答案,一下子百度了一下午,甚至重新將工具類下載下來,導入項目中使用,還是不行,就這樣一直搞,納悶了,從下午15:30差不多到晚上21:20 也沒發現什麼問題,眼看不早了,並且自己還沒吃飯,賊餓,就決定將項目上傳到碼雲上,回宿舍去寫

到宿舍之後調試好項目,就又嘗試處理,還是有問題,就這樣又到了23點多,我問同事,他說你試着將上個項目的邏輯拿過來試試,我就這樣照做了,沒什麼問題,然後他就說就是後端返數據問題了,就這樣他來到我的電腦旁,看打印的數據,萬萬沒想到啊!

之前返回的數據:res.data.openid      res.data.session_key    

現在返回的數據:res.data.data.openid      res.data.data.session_key   

我是閉着眼複製的代碼,什麼也沒看,就用了之前的數據賦值,就導致了這個問題,導致框架裏的base轉byte數組出現問題,奇葩的是我還質疑框架有問題,現在想想真的不知道當時誰給我的勇氣啊,可笑吧,浪費了一下午,一晚上時間,我和同事都笑了,這就是複製粘貼導致的問題,既浪費了自己的時間,甚至浪費了他人的時間,哎!
ps:因此,我建議大家在開發項目中,複製 粘貼也要細心,別覺得都是一樣的東西不會出問題,萬一,後端改了啥你也不知道,最後影響的還是自己,也許你們不會犯這樣的錯誤,那更好,千萬別像我一樣,,,,,

臨近下班寫了篇博客,回宿舍工作了,下回見。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章