㈠ php處理微信小程序request請求
微信小程序的js後台只能執行一些簡單的邏輯,遇到比較復雜的處理表單數據的功能或者網路功能就需要連接伺服器來遠程處理,實現方式就是調用小程序的 wx.request() 這一介面。
request請求 就是基本的HTTP請求,可以攜帶一些表單數據,交給伺服器處理。
在小程序中的寫法如下:
採用php作為伺服器端語言,通過WAMP等框架可以很容易地搭建環境,伺服器主要完成對請求數據的處理以及結果數據的返回。
請求數據的獲取非常容易,直接訪問相應的超全局數組,對於GET方法而言,通過下面的方式即可:
為了方便小程序端數據的處理,結果數據仍通過json格式返回,具體在php中的簡單做法就是
這樣返回的json數據就為
其中value1,value2等變數可以設置為多維數組,這樣通過json_encode() 函數之後就可以得到相應的嵌套的json數據,從而方便處理。
通過php可以很容易地處理微信小程序的request請求,筆者是由於前一段時間需要進行微信小程序的開發,就研究了一下小程序的邏輯,然後嘗試用php進行服務端處理,對於簡單的請求處理起來覺得還不錯,這篇文章可以作為初次接觸微信小程序的一個參考。
㈡ 微信小程序之用戶數據解密
經常看到有點的小夥伴在群里問小程序用戶數據解密流程,所以打扒行算寫一篇關於小程序用戶敏感數據解密教程;
加密過程微信伺服器完成,解密過程在小程序和自身伺服器完成,即由 encryptData 得到如下數據:
准備知識:
以上3點對於理解解密流程非常重要 。
根據官方文檔,我梳理了大致的解密流程,如下:
重點在6、7、8三個環節。
AES解密三個參數:
服務端解密流程:
下面結合小程序實例說明解密流程:
最後的效果如下:
如果你的小程序沒有綁定微信開放平台,解密的數據中不包含unionid參數
小程序綁定微信開放平台連接
從解密的數據看,算得上敏感的數據只有appid;個人覺得openid不是敏感數據,每個用戶針對每個公眾號會產生一個安全的openid;openid只有在appid的作用域下可用。除非你的appid也泄露了。
那麼可以從解密數據得到appid,微信小程序團隊是何用意呢?還是前面那句話,openid脫離了appid就什麼都不是,openid和appid一起為枯消了方便小程序開發者做到不同小程序應用之間用戶區分和隔離,同時能夠將微信用戶體系與第三方業務體系結合。沒此知
所以我認為敏感數據解密的主要用處不是解密後回傳給客戶端,而是在服務端將微信用戶信息融入到自身業務當中。