weixin-popular icon indicating copy to clipboard operation
weixin-popular copied to clipboard

weixin.popular.util.WxaUtil类需要加个方法,针对小程序授权手机号转换成手机号信息

Open zyl-me opened this issue 4 years ago • 2 comments

public static WxaUserPhoneInfo decryptUserPhoneInfo(String session_key, String encryptedData, String iv) { try { Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding"); Key sKeySpec = new SecretKeySpec(Base64.decodeBase64(session_key), "AES"); cipher.init(Cipher.DECRYPT_MODE, sKeySpec, new IvParameterSpec(Base64.decodeBase64(iv))); byte[] resultByte = cipher.doFinal(Base64.decodeBase64(encryptedData)); String data = new String(PKCS7Encoder.decode(resultByte), StandardCharsets.UTF_8); return JsonUtil.parseObject(data, WxaUserPhoneInfo.class); } catch (Exception e) { logger.error("", e); } return null; }

`package weixin.popular.bean.wxa;

public class WxaUserPhoneInfo {

private String phoneNumber;//用户绑定的手机号(国外手机号会有区号)

private String purePhoneNumber;//没有区号的手机号

private String countryCode;//区号

private Watermark watermark;

public String getPhoneNumber() {
	return phoneNumber;
}

public void setPhoneNumber(String phoneNumber) {
	this.phoneNumber = phoneNumber;
}

public String getPurePhoneNumber() {
	return purePhoneNumber;
}

public void setPurePhoneNumber(String purePhoneNumber) {
	this.purePhoneNumber = purePhoneNumber;
}

public String getCountryCode() {
	return countryCode;
}

public void setCountryCode(String countryCode) {
	this.countryCode = countryCode;
}

public Watermark getWatermark() {
	return watermark;
}

public void setWatermark(Watermark watermark) {
	this.watermark = watermark;
}

} `

zyl-me avatar Jun 08 '20 07:06 zyl-me

public static WxaUserPhoneInfo decryptUserPhoneInfo(String session_key, String encryptedData, String iv) { try { Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding"); Key sKeySpec = new SecretKeySpec(Base64.decodeBase64(session_key), "AES"); cipher.init(Cipher.DECRYPT_MODE, sKeySpec, new IvParameterSpec(Base64.decodeBase64(iv))); byte[] resultByte = cipher.doFinal(Base64.decodeBase64(encryptedData)); String data = new String(PKCS7Encoder.decode(resultByte), StandardCharsets.UTF_8); return JsonUtil.parseObject(data, WxaUserPhoneInfo.class); } catch (Exception e) { logger.error("", e); } return null; }

zyl-me avatar Jun 08 '20 07:06 zyl-me

`package weixin.popular.bean.wxa;

public class WxaUserPhoneInfo {

private String phoneNumber;//用户绑定的手机号(国外手机号会有区号)

private String purePhoneNumber;//没有区号的手机号

private String countryCode;//区号

private Watermark watermark;

public String getPhoneNumber() {
	return phoneNumber;
}

public void setPhoneNumber(String phoneNumber) {
	this.phoneNumber = phoneNumber;
}

public String getPurePhoneNumber() {
	return purePhoneNumber;
}

public void setPurePhoneNumber(String purePhoneNumber) {
	this.purePhoneNumber = purePhoneNumber;
}

public String getCountryCode() {
	return countryCode;
}

public void setCountryCode(String countryCode) {
	this.countryCode = countryCode;
}

public Watermark getWatermark() {
	return watermark;
}

public void setWatermark(Watermark watermark) {
	this.watermark = watermark;
}

} `

zyl-me avatar Jun 08 '20 07:06 zyl-me