View Javadoc
1   package com.foxinmy.weixin4j.wxa;
2   
3   import static org.junit.Assert.assertEquals;
4   
5   import org.junit.Test;
6   
7   import com.alibaba.fastjson.JSONObject;
8   
9   public class WXBizDataCryptTest {
10  
11  	@Test
12  	public void testDecryptData() {
13  		String appId = "wx4f4bc4dec97d474b";
14  		String sessionKey = "tiihtNczf5v6AKRyjwEUhQ==";
15  
16  		WXBizDataCrypt biz = new WXBizDataCrypt(appId, sessionKey);
17  
18  		String encryptedData
19  			= "CiyLU1Aw2KjvrjMdj8YKliAjtP4gsMZM"
20  			+ "QmRzooG2xrDcvSnxIMXFufNstNGTyaGS"
21  			+ "9uT5geRa0W4oTOb1WT7fJlAC+oNPdbB+"
22  			+ "3hVbJSRgv+4lGOETKUQz6OYStslQ142d"
23  			+ "NCuabNPGBzlooOmB231qMM85d2/fV6Ch"
24  			+ "evvXvQP8Hkue1poOFtnEtpyxVLW1zAo6"
25  			+ "/1Xx1COxFvrc2d7UL/lmHInNlxuacJXw"
26  			+ "u0fjpXfz/YqYzBIBzD6WUfTIF9GRHpOn"
27  			+ "/Hz7saL8xz+W//FRAUid1OksQaQx4CMs"
28  			+ "8LOddcQhULW4ucetDf96JcR3g0gfRK4P"
29  			+ "C7E/r7Z6xNrXd2UIeorGj5Ef7b1pJAYB"
30  			+ "6Y5anaHqZ9J6nKEBvB4DnNLIVWSgARns"
31  			+ "/8wR2SiRS7MNACwTyrGvt9ts8p12PKFd"
32  			+ "lqYTopNHR1Vf7XjfhQlVsAJdNiKdYmYV"
33  			+ "oKlaRv85IfVunYzO0IKXsyl7JCUjCpoG"
34  			+ "20f0a04COwfneQAGGwd5oa+T8yO5hzuy"
35  			+ "Db/XcxxmK01EpqOyuxINew==";
36  		String iv = "r7BXXKkLb8qrSNn05n0qiA==";
37  
38  		JSONObject data = biz.decryptData(encryptedData, iv);
39  
40  		assertEquals("CN", data.getString("country"));
41  		assertEquals("ocMvos6NjeKLIBqg5Mr9QjxrP1FA", data.getString("unionId"));
42  		assertEquals(1, data.getIntValue("gender"));
43  		assertEquals("Guangdong", data.getString("province"));
44  		assertEquals("Guangzhou", data.getString("city"));
45  		assertEquals("http://wx.qlogo.cn/mmopen/vi_32/aSKcBBPpibyKNicHNTMM0qJVh8Kjgiak2AHWr8MHM4WgMEm7GFhsf8OYrySdbvAMvTsw3mo8ibKicsnfN5pRjl1p8HQ/0", data.getString("avatarUrl"));
46  		assertEquals("oGZUI0egBJY1zhBYw2KhdUfwVJJE", data.getString("openId"));
47  		assertEquals("Band", data.getString("nickName"));
48  		assertEquals("zh_CN", data.getString("language"));
49  
50  		JSONObject watermark = data.getJSONObject("watermark");
51  		assertEquals("wx4f4bc4dec97d474b", watermark.getString("appid"));
52  		assertEquals(1477314187L, watermark.getLongValue("timestamp"));
53  	}
54  
55  }