卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

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

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

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

解密流程概述

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

2. 開發(fā)者后臺(tái)對(duì)接收到的數(shù)據(jù)進(jìn)行校驗(yàn)簽名和解密操作。

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

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

5. 通過接口獲取session_key。

6. 當(dāng)涉及敏感數(shù)據(jù)時(shí),接口返回的明文內(nèi)容不包含這些數(shù)據(jù)。開發(fā)者需對(duì)加密數(shù)據(jù)進(jìn)行對(duì)稱解密操作。

解密算法步驟

- 對(duì)稱解密采用AES-128-CBC算法,數(shù)據(jù)采用PKCS7填充。

- 目標(biāo)密文為Base64_Decode(encryptedData)。

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

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

示例代碼與注意事項(xiàng)

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

- 為校驗(yàn)數(shù)據(jù)有效性,在敏感數(shù)據(jù)上加上數(shù)據(jù)水印(watermark)。

- 解密代碼需要手動(dòng)導(dǎo)入BouncyCastleProvider包。Maven依賴如下:

```xml

bcprov-jdk15on

1.59

```

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

標(biāo)簽: