From 86f8654bbea96381e7b03952cc20da5488a76ae1 Mon Sep 17 00:00:00 2001 From: niko Date: Wed, 1 Nov 2023 17:40:28 +0800 Subject: [PATCH] fix getPhoneNumber --- .../weixin4j/wxa/api/PhoneNumberApi.java | 10 ++++----- .../wxa/api/PhoneNumberParameter.java | 21 +++++++++++++++++++ .../weixin4j/wxa/api/weixin.properties | 2 +- 3 files changed, 26 insertions(+), 7 deletions(-) create mode 100644 weixin4j-wxa/src/main/java/com/foxinmy/weixin4j/wxa/api/PhoneNumberParameter.java diff --git a/weixin4j-wxa/src/main/java/com/foxinmy/weixin4j/wxa/api/PhoneNumberApi.java b/weixin4j-wxa/src/main/java/com/foxinmy/weixin4j/wxa/api/PhoneNumberApi.java index fa59efff..28f0bf50 100644 --- a/weixin4j-wxa/src/main/java/com/foxinmy/weixin4j/wxa/api/PhoneNumberApi.java +++ b/weixin4j-wxa/src/main/java/com/foxinmy/weixin4j/wxa/api/PhoneNumberApi.java @@ -2,7 +2,6 @@ package com.foxinmy.weixin4j.wxa.api; import com.alibaba.fastjson.JSONObject; import com.foxinmy.weixin4j.exception.WeixinException; -import com.foxinmy.weixin4j.http.weixin.WeixinResponse; import com.foxinmy.weixin4j.token.TokenManager; import com.foxinmy.weixin4j.wxa.WXBizDataCrypt; import com.foxinmy.weixin4j.wxa.model.phone.PhoneInfo; @@ -29,13 +28,12 @@ public class PhoneNumberApi extends TokenManagerApi { * @see */ public PhoneInfo getPhoneNumber(String code) throws WeixinException { - String wxaGetUserPhone = getRequestUri( + final PhoneNumberParameter phoneNumberParameter = new PhoneNumberParameter(code); + PhoneInfoResult phoneInfoResult = this.post( "wxa_get_user_phone", - code, - WxaApiResult.TYPE_REFERENCE + phoneNumberParameter, + PhoneInfoResult.TYPE_REFERENCE ); - WeixinResponse post = this.weixinExecutor.post(wxaGetUserPhone); - PhoneInfoResult phoneInfoResult = post.getAsObject(PhoneInfoResult.TYPE_REFERENCE); phoneInfoResult.checkErrCode(); return phoneInfoResult.getPhoneInfo(); } diff --git a/weixin4j-wxa/src/main/java/com/foxinmy/weixin4j/wxa/api/PhoneNumberParameter.java b/weixin4j-wxa/src/main/java/com/foxinmy/weixin4j/wxa/api/PhoneNumberParameter.java new file mode 100644 index 00000000..3e287fba --- /dev/null +++ b/weixin4j-wxa/src/main/java/com/foxinmy/weixin4j/wxa/api/PhoneNumberParameter.java @@ -0,0 +1,21 @@ +package com.foxinmy.weixin4j.wxa.api; + +import java.io.Serializable; + +public class PhoneNumberParameter implements Serializable { + + private String code; + + public PhoneNumberParameter(String code) { + this.code = code; + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + +} diff --git a/weixin4j-wxa/src/main/resources/com/foxinmy/weixin4j/wxa/api/weixin.properties b/weixin4j-wxa/src/main/resources/com/foxinmy/weixin4j/wxa/api/weixin.properties index 94f8b1f2..0ddb55f2 100644 --- a/weixin4j-wxa/src/main/resources/com/foxinmy/weixin4j/wxa/api/weixin.properties +++ b/weixin4j-wxa/src/main/resources/com/foxinmy/weixin4j/wxa/api/weixin.properties @@ -57,4 +57,4 @@ wxa_media_check_async={api_wxa_url}/media_check_async?access_token=%s wxa_msg_sec_check={api_wxa_url}/msg_sec_check?access_token=%s # getuserphonenumber -wxa_get_user_phone={api_wxa_url}/business/getuserphonenumber?access_token=%s&code=%s +wxa_get_user_phone={api_wxa_url}/business/getuserphonenumber?access_token=%s