微信加密數據解密

經過官方的例子就能配置成功,須要注意session_key,$encryptedData和$iv必定要嚴格對應,若是沒有對應就沒法解密並返回錯誤碼:-41003. 這個問題調整了兩三天,才發現是調試時把$encryptedData寫死了,因此纔出現這個問題。json

引入微信加密數據解密後,返回的數據一直報SyntaxError: Unexpected token   in JSON at position 0,沒法解析成json對象。通常的若是是數據格式錯誤的話,token後面會有錯誤的字符,奇怪的是這個沒有。折騰了一下午,後來經過調試後發現,在服務器返回的數據前面多了幾個通常狀況下看不到的空格,上圖:服務器

這個空格在編輯器裏是看不到的,就是這個空格把全部的東西都改變了。打印出來的內容變成了這樣:微信

data:"{\"code\":200,\"message\":\"user login success!\",\"data\":\"<''\"}"

​​​​​​而正常狀況下是:session

data:{"code":200,"message":"user login success!","data":"<''"}

解決方法:把從微信官方提供的解密文件轉換成「以UTF-8無BOM格式編碼」便可神奇的解決這個問題。編輯器

轉換後調試結果,JSON也能正常解析了。編碼

相關文章
相關標籤/搜索