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