Commit fe1d8cb0 by 吕明尚

增加抖音权限过期错误自动获取权限

parent 377a72c3
......@@ -9,6 +9,10 @@ public enum ErrorCodeEnum {
PARAM_ERROR("2100005", "参数不合法"),
//2100007 无权限操作
NO_PERMISSION("2100007", "无权限操作"),
//2190002 access_token无效
ACCESS_TOKEN_INVALID("2190002", "access_token无效"),
//2190008 access_token过期,请刷新或重新授权
ACCESS_TOKEN_EXPIRE("2190008", "access_token过期,请刷新或重新授权"),
;
private String code;
......
......@@ -155,6 +155,10 @@ public class TiktokServiceImpl implements TiktokService {
}
JSONObject entries = new JSONObject(result);
JSONObject data = entries.getJSONObject("data");
if (data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_INVALID.getCode()) | data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_EXPIRE.getCode())) {
clientToken();
prepare(tiktokCouponDto);
}
if (!data.getStr("error_code").equals(ErrorCodeEnum.SUCCESS.getCode())) {
logger.error("抖音验券准备失败:{}", data.getStr("description"));
throw new RuntimeException(data.getStr("description"));
......@@ -177,6 +181,10 @@ public class TiktokServiceImpl implements TiktokService {
.body(jsonObject.toString()).execute().body();
JSONObject entries = new JSONObject(result);
JSONObject data = entries.getJSONObject("data");
if (data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_INVALID.getCode()) | data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_EXPIRE.getCode())) {
clientToken();
verify(tiktokCouponDto);
}
JSONObject extra = entries.getJSONObject("extra");
if (data.getStr("error_code").equals(ErrorCodeEnum.SUCCESS.getCode()) && ((JSONObject) data.getJSONArray("verify_results").get(0)).getStr("result").equals(ErrorCodeEnum.SUCCESS.getCode())) {
return data;
......@@ -202,6 +210,10 @@ public class TiktokServiceImpl implements TiktokService {
.body(jsonObject.toString()).execute().body();
JSONObject entries = new JSONObject(result);
JSONObject data = entries.getJSONObject("data");
if (data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_INVALID.getCode()) | data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_EXPIRE.getCode())) {
clientToken();
cancel(tiktokCouponDto);
}
if (!data.getStr("error_code").equals(ErrorCodeEnum.SUCCESS.getCode())) {
logger.error("抖音撤销核销失败:{}", data.getStr("description"));
throw new RuntimeException(data.getStr("description"));
......@@ -225,6 +237,10 @@ public class TiktokServiceImpl implements TiktokService {
.form("encrypted_code", encode).execute().body();
JSONObject entries = new JSONObject(result);
JSONObject data = entries.getJSONObject("data");
if (data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_INVALID.getCode()) | data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_EXPIRE.getCode())) {
clientToken();
certificateGet(encryptedCode);
}
if (!data.getStr("error_code").equals(ErrorCodeEnum.SUCCESS.getCode())) {
logger.error("抖音获取核销信息失败:{}", data.getStr("description"));
throw new BaseException(data.getStr("description"));
......@@ -245,6 +261,10 @@ public class TiktokServiceImpl implements TiktokService {
.execute().body();
JSONObject entries = new JSONObject(result);
JSONObject data = entries.getJSONObject("data");
if (data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_INVALID.getCode()) | data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_EXPIRE.getCode())) {
clientToken();
poiQuery(tiktokCouponDto);
}
if (!data.getStr("error_code").equals(ErrorCodeEnum.SUCCESS.getCode())) {
throw new RuntimeException(data.getStr("description"));
}
......@@ -278,6 +298,10 @@ public class TiktokServiceImpl implements TiktokService {
.execute().body();
JSONObject entries = new JSONObject(result);
JSONObject data = entries.getJSONObject("data");
if (data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_INVALID.getCode()) | data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_EXPIRE.getCode())) {
clientToken();
onlineQuery(onlineQueryDto);
}
if (!data.getStr("error_code").equals(ErrorCodeEnum.SUCCESS.getCode())) {
throw new RuntimeException(data.getStr("description"));
}
......@@ -294,7 +318,12 @@ public class TiktokServiceImpl implements TiktokService {
.form("account_id", accountId)
.execute().body();
JSONObject entries = new JSONObject(result);
return entries.getJSONObject("data");
JSONObject data = entries.getJSONObject("data");
if (data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_INVALID.getCode()) | data.getStr("error_code").equals(ErrorCodeEnum.ACCESS_TOKEN_EXPIRE.getCode())) {
clientToken();
onlineGet(productIds, accountId);
}
return data;
}
@Override
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment