@@ -1,9 +1,9 @@ | |||||
package me.chanjar.weixin.mp.bean.result; | package me.chanjar.weixin.mp.bean.result; | ||||
import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder; | |||||
import java.io.Serializable; | import java.io.Serializable; | ||||
import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder; | |||||
public class WxMpOAuth2AccessToken implements Serializable { | public class WxMpOAuth2AccessToken implements Serializable { | ||||
private String accessToken; | private String accessToken; | ||||
@@ -16,6 +16,8 @@ public class WxMpOAuth2AccessToken implements Serializable { | |||||
private String scope; | private String scope; | ||||
private String unionId; | |||||
public String getRefreshToken() { | public String getRefreshToken() { | ||||
return refreshToken; | return refreshToken; | ||||
} | } | ||||
@@ -56,6 +58,14 @@ public class WxMpOAuth2AccessToken implements Serializable { | |||||
this.expiresIn = expiresIn; | this.expiresIn = expiresIn; | ||||
} | } | ||||
public String getUnionId() { | |||||
return unionId; | |||||
} | |||||
public void setUnionId(String unionId) { | |||||
this.unionId = unionId; | |||||
} | |||||
public static WxMpOAuth2AccessToken fromJson(String json) { | public static WxMpOAuth2AccessToken fromJson(String json) { | ||||
return WxMpGsonBuilder.create().fromJson(json, WxMpOAuth2AccessToken.class); | return WxMpGsonBuilder.create().fromJson(json, WxMpOAuth2AccessToken.class); | ||||
} | } | ||||
@@ -68,6 +78,7 @@ public class WxMpOAuth2AccessToken implements Serializable { | |||||
", refreshToken='" + refreshToken + '\'' + | ", refreshToken='" + refreshToken + '\'' + | ||||
", openId='" + openId + '\'' + | ", openId='" + openId + '\'' + | ||||
", scope='" + scope + '\'' + | ", scope='" + scope + '\'' + | ||||
", unionId='" + unionId + '\'' + | |||||
'}'; | '}'; | ||||
} | } | ||||
} | } |
@@ -1,11 +1,16 @@ | |||||
package me.chanjar.weixin.mp.util.json; | package me.chanjar.weixin.mp.util.json; | ||||
import com.google.gson.*; | |||||
import java.lang.reflect.Type; | |||||
import com.google.gson.JsonDeserializationContext; | |||||
import com.google.gson.JsonDeserializer; | |||||
import com.google.gson.JsonElement; | |||||
import com.google.gson.JsonObject; | |||||
import com.google.gson.JsonParseException; | |||||
import me.chanjar.weixin.common.util.json.GsonHelper; | import me.chanjar.weixin.common.util.json.GsonHelper; | ||||
import me.chanjar.weixin.mp.bean.result.WxMpOAuth2AccessToken; | import me.chanjar.weixin.mp.bean.result.WxMpOAuth2AccessToken; | ||||
import java.lang.reflect.Type; | |||||
public class WxMpOAuth2AccessTokenAdapter implements JsonDeserializer<WxMpOAuth2AccessToken> { | public class WxMpOAuth2AccessTokenAdapter implements JsonDeserializer<WxMpOAuth2AccessToken> { | ||||
public WxMpOAuth2AccessToken deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws | public WxMpOAuth2AccessToken deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws | ||||
@@ -28,6 +33,9 @@ public class WxMpOAuth2AccessTokenAdapter implements JsonDeserializer<WxMpOAuth2 | |||||
if (accessTokenJsonObject.get("scope") != null && !accessTokenJsonObject.get("scope").isJsonNull()) { | if (accessTokenJsonObject.get("scope") != null && !accessTokenJsonObject.get("scope").isJsonNull()) { | ||||
accessToken.setScope(GsonHelper.getAsString(accessTokenJsonObject.get("scope"))); | accessToken.setScope(GsonHelper.getAsString(accessTokenJsonObject.get("scope"))); | ||||
} | } | ||||
if (accessTokenJsonObject.get("unionid") != null && !accessTokenJsonObject.get("unionid").isJsonNull()) { | |||||
accessToken.setUnionId(GsonHelper.getAsString(accessTokenJsonObject.get("unionid"))); | |||||
} | |||||
return accessToken; | return accessToken; | ||||
} | } | ||||