fix getPhoneNumber

This commit is contained in:
NikoXu 2023-11-01 17:40:28 +08:00
parent 0cb2fce609
commit 86f8654bbe
3 changed files with 26 additions and 7 deletions

View File

@ -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 <a href="https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/phonenumber/phonenumber.getPhoneNumber.html"><a/>
*/
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();
}

View File

@ -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;
}
}

View File

@ -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