国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

微信小程序開發(fā)者服務器獲取用戶數據詳解

在微信小游戲/小程序開發(fā)中,開發(fā)者服務器需要獲取用戶數據,如用戶名、頭像、unionId等信息。官方文檔提供了小程序上傳encryptedData數據由服務器解密的方式。下面將介紹在Java環(huán)境下解密

在微信小游戲/小程序開發(fā)中,開發(fā)者服務器需要獲取用戶數據,如用戶名、頭像、unionId等信息。官方文檔提供了小程序上傳encryptedData數據由服務器解密的方式。下面將介紹在Java環(huán)境下解密的基本流程。

解密流程概述

1. 小程序通過前端接口獲取微信提供的開放數據,并上傳至開發(fā)者服務器。

2. 開發(fā)者后臺對接收到的數據進行校驗簽名和解密操作。

3. 用戶在小程序上使用wx.login登錄授權,獲得用戶登錄憑證code值。

4. 使用獲取用戶數據,將code、encryptedData、iv數據上傳至開發(fā)者服務器。

5. 通過接口獲取session_key。

6. 當涉及敏感數據時,接口返回的明文內容不包含這些數據。開發(fā)者需對加密數據進行對稱解密操作。

解密算法步驟

- 對稱解密采用AES-128-CBC算法,數據采用PKCS7填充。

- 目標密文為Base64_Decode(encryptedData)。

- 解密秘鑰aeskey Base64_Decode(session_key),aeskey長度為16字節(jié)。

- 初始向量為Base64_Decode(iv),iv由數據接口返回。

示例代碼與注意事項

- 微信官方提供了多種編程語言的示例代碼,調用方式一致。開發(fā)者可參考示例代碼進行實現。

- 為校驗數據有效性,在敏感數據上加上數據水印(watermark)。

- 解密代碼需要手動導入BouncyCastleProvider包。Maven依賴如下:

```xml

bcprov-jdk15on

1.59

```

以上是關于在微信小程序開發(fā)中,開發(fā)者服務器獲取用戶數據并進行解密的詳細流程和注意事項。通過遵循官方文檔提供的指引和示例代碼,開發(fā)者可以成功實現數據解密操作,確保用戶數據的安全性和準確性。

標簽: