不清楚为什么可以用 Apache 的随机字符串生成类还要自己写一个,直接使用 Apache 的字符串生成类
This commit is contained in:
parent
b8d15f0124
commit
29cccd94b2
@ -1,17 +0,0 @@
|
||||
package com.ossez.wechat.common.util;
|
||||
|
||||
public class RandomUtils {
|
||||
|
||||
private static final String RANDOM_STR = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
|
||||
|
||||
private static final java.util.Random RANDOM = new java.util.Random();
|
||||
|
||||
public static String getRandomStr() {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 0; i < 16; i++) {
|
||||
sb.append(RANDOM_STR.charAt(RANDOM.nextInt(RANDOM_STR.length())));
|
||||
}
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
}
|
@ -6,9 +6,9 @@ import com.google.gson.JsonObject;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import com.ossez.wechat.common.bean.WxJsapiSignature;
|
||||
import com.ossez.wechat.common.exception.WxErrorException;
|
||||
import com.ossez.wechat.common.util.RandomUtils;
|
||||
import com.ossez.wechat.common.util.crypto.SHA1;
|
||||
import com.ossez.wechat.common.util.json.GsonParser;
|
||||
import org.apache.commons.lang3.RandomStringUtils;
|
||||
|
||||
import java.util.concurrent.locks.Lock;
|
||||
|
||||
@ -84,7 +84,7 @@ public class WxMaJsapiServiceImpl implements WxMaJsapiService {
|
||||
@Override
|
||||
public WxJsapiSignature createJsapiSignature(String url) throws WxErrorException {
|
||||
long timestamp = System.currentTimeMillis() / 1000;
|
||||
String randomStr = RandomUtils.getRandomStr();
|
||||
String randomStr = RandomStringUtils.randomAlphanumeric(16);
|
||||
String jsapiTicket = getJsapiTicket(false);
|
||||
String signature = SHA1.genWithAmple("jsapi_ticket=" + jsapiTicket,
|
||||
"noncestr=" + randomStr, "timestamp=" + timestamp, "url=" + url);
|
||||
|
@ -20,7 +20,6 @@ import com.ossez.wechat.common.service.WxOcrService;
|
||||
import com.ossez.wechat.common.session.StandardSessionManager;
|
||||
import com.ossez.wechat.common.session.WxSessionManager;
|
||||
import com.ossez.wechat.common.util.DataUtils;
|
||||
import com.ossez.wechat.common.util.RandomUtils;
|
||||
import com.ossez.wechat.common.util.crypto.SHA1;
|
||||
import com.ossez.wechat.common.util.http.*;
|
||||
import com.ossez.wechat.common.util.json.GsonParser;
|
||||
@ -36,6 +35,7 @@ import com.ossez.wechat.oa.util.WxMpConfigStorageHolder;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.RandomStringUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.io.IOException;
|
||||
@ -235,7 +235,7 @@ public abstract class BaseWeChatOfficialAccountServiceImpl<H, P> implements WeCh
|
||||
@Override
|
||||
public WxJsapiSignature createJsapiSignature(String url) throws WxErrorException {
|
||||
long timestamp = System.currentTimeMillis() / 1000;
|
||||
String randomStr = RandomUtils.getRandomStr();
|
||||
String randomStr = RandomStringUtils.randomAlphanumeric(16);
|
||||
String jsapiTicket = getJsapiTicket(false);
|
||||
String signature = SHA1.genWithAmple("jsapi_ticket=" + jsapiTicket,
|
||||
"noncestr=" + randomStr, "timestamp=" + timestamp, "url=" + url);
|
||||
|
@ -8,7 +8,6 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import com.ossez.wechat.common.bean.WxCardApiSignature;
|
||||
import com.ossez.wechat.common.exception.WxError;
|
||||
import com.ossez.wechat.common.exception.WxErrorException;
|
||||
import com.ossez.wechat.common.util.RandomUtils;
|
||||
import com.ossez.wechat.common.util.http.SimpleGetRequestExecutor;
|
||||
import com.ossez.wechat.common.util.json.GsonParser;
|
||||
import com.ossez.wechat.common.util.json.WxGsonBuilder;
|
||||
@ -18,6 +17,7 @@ import com.ossez.wechat.common.enums.TicketType;
|
||||
import com.ossez.wechat.oa.enums.WxMpApiUrl;
|
||||
import com.ossez.wechat.oa.util.json.WxMpGsonBuilder;
|
||||
import org.apache.commons.codec.digest.DigestUtils;
|
||||
import org.apache.commons.lang3.RandomStringUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.util.Arrays;
|
||||
@ -74,7 +74,7 @@ public class WxMpCardServiceImpl implements WxMpCardService {
|
||||
@Override
|
||||
public WxCardApiSignature createCardApiSignature(String... optionalSignParam) throws WxErrorException {
|
||||
long timestamp = System.currentTimeMillis() / 1000;
|
||||
String nonceStr = RandomUtils.getRandomStr();
|
||||
String nonceStr = RandomStringUtils.randomAlphanumeric(16);
|
||||
String cardApiTicket = getCardApiTicket(false);
|
||||
|
||||
String[] signParams = Arrays.copyOf(optionalSignParam, optionalSignParam.length + 3);
|
||||
|
@ -23,8 +23,8 @@ import com.ossez.wechat.pay.util.XmlConfig;
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.GsonBuilder;
|
||||
import com.google.inject.Inject;
|
||||
import com.ossez.wechat.common.util.RandomUtils;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.RandomStringUtils;
|
||||
import org.testng.annotations.DataProvider;
|
||||
import org.testng.annotations.Guice;
|
||||
import org.testng.annotations.Test;
|
||||
@ -713,7 +713,7 @@ public class BaseWxPayServiceImplTest {
|
||||
|
||||
@Test
|
||||
public void testUnifiedOrderV3() throws WxPayException {
|
||||
String outTradeNo = RandomUtils.getRandomStr();
|
||||
String outTradeNo = RandomStringUtils.randomAlphanumeric(16);
|
||||
String notifyUrl = "https://api.qq.com/";
|
||||
System.out.println("outTradeNo = " + outTradeNo);
|
||||
WxPayUnifiedOrderV3Request request = new WxPayUnifiedOrderV3Request();
|
||||
@ -755,7 +755,7 @@ public class BaseWxPayServiceImplTest {
|
||||
|
||||
@Test
|
||||
public void testRefundV3() throws WxPayException {
|
||||
String outRefundNo = RandomUtils.getRandomStr();
|
||||
String outRefundNo = RandomStringUtils.randomAlphanumeric(16);
|
||||
String notifyUrl = "https://api.qq.com/";
|
||||
System.out.println("outRefundNo = " + outRefundNo);
|
||||
WxPayRefundV3Request request = new WxPayRefundV3Request();
|
||||
|
@ -12,8 +12,8 @@ import com.ossez.wechat.pay.exception.WxPayException;
|
||||
import com.ossez.wechat.pay.service.WxPayService;
|
||||
import com.ossez.wechat.pay.testbase.ApiTestModule;
|
||||
import com.google.inject.Inject;
|
||||
import com.ossez.wechat.common.util.RandomUtils;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.RandomStringUtils;
|
||||
import org.testng.annotations.Guice;
|
||||
import org.testng.annotations.Test;
|
||||
|
||||
@ -58,7 +58,7 @@ public class EcommerceServiceImplTest {
|
||||
|
||||
@Test
|
||||
public void testCombinePay() throws WxPayException {
|
||||
String outTradeNo = RandomUtils.getRandomStr();
|
||||
String outTradeNo = RandomStringUtils.randomAlphanumeric(16);
|
||||
String notifyUrl = "https://api.qq.com/";
|
||||
System.out.println("outTradeNo = " + outTradeNo);
|
||||
CombineTransactionsRequest request = new CombineTransactionsRequest();
|
||||
|
@ -20,7 +20,6 @@ import com.ossez.wechat.common.exception.WxErrorException;
|
||||
import com.ossez.wechat.common.exception.WxRuntimeException;
|
||||
import com.ossez.wechat.common.model.WeChatAccessToken;
|
||||
import com.ossez.wechat.common.util.DataUtils;
|
||||
import com.ossez.wechat.common.util.RandomUtils;
|
||||
import com.ossez.wechat.common.util.crypto.SHA1;
|
||||
import com.ossez.wechat.common.util.http.*;
|
||||
import com.ossez.wechat.common.util.json.GsonParser;
|
||||
@ -28,6 +27,7 @@ import com.ossez.wechat.common.util.json.WxGsonBuilder;
|
||||
import com.ossez.wechat.qidian.config.WxQidianConfigStorage;
|
||||
import com.ossez.wechat.qidian.enums.WxQidianApiUrl;
|
||||
import com.ossez.wechat.qidian.util.WxQidianConfigStorageHolder;
|
||||
import org.apache.commons.lang3.RandomStringUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import lombok.Getter;
|
||||
@ -109,7 +109,7 @@ public abstract class BaseWxQidianServiceImpl<H, P> implements WxQidianService,
|
||||
@Override
|
||||
public WxJsapiSignature createJsapiSignature(String url) throws WxErrorException {
|
||||
long timestamp = System.currentTimeMillis() / 1000;
|
||||
String randomStr = RandomUtils.getRandomStr();
|
||||
String randomStr = RandomStringUtils.randomAlphanumeric(16);
|
||||
String jsapiTicket = getJsapiTicket(false);
|
||||
String signature = SHA1.genWithAmple("jsapi_ticket=" + jsapiTicket, "noncestr=" + randomStr,
|
||||
"timestamp=" + timestamp, "url=" + url);
|
||||
|
@ -14,7 +14,6 @@ import com.ossez.wechat.common.session.StandardSessionManager;
|
||||
import com.ossez.wechat.common.session.WxSession;
|
||||
import com.ossez.wechat.common.session.WxSessionManager;
|
||||
import com.ossez.wechat.common.util.DataUtils;
|
||||
import com.ossez.wechat.common.util.RandomUtils;
|
||||
import com.ossez.wechat.common.util.crypto.SHA1;
|
||||
import com.ossez.wechat.common.util.http.*;
|
||||
import com.ossez.wechat.common.util.json.GsonParser;
|
||||
@ -25,6 +24,7 @@ import com.ossez.wechat.wecom.bean.WxCpProviderToken;
|
||||
import com.ossez.wechat.wecom.config.WxCpConfigStorage;
|
||||
import com.ossez.wechat.wecom.constant.WxCpApiPathConsts;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.RandomStringUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.io.File;
|
||||
@ -167,7 +167,7 @@ public abstract class BaseWxCpServiceImpl<H, P> implements WxCpService, RequestH
|
||||
@Override
|
||||
public WxJsapiSignature createJsapiSignature(String url) throws WxErrorException {
|
||||
long timestamp = System.currentTimeMillis() / 1000;
|
||||
String noncestr = RandomUtils.getRandomStr();
|
||||
String noncestr = RandomStringUtils.randomAlphanumeric(16);
|
||||
String jsapiTicket = getJsapiTicket(false);
|
||||
String signature = SHA1.genWithAmple(
|
||||
"jsapi_ticket=" + jsapiTicket,
|
||||
@ -190,7 +190,7 @@ public abstract class BaseWxCpServiceImpl<H, P> implements WxCpService, RequestH
|
||||
@Override
|
||||
public WxCpAgentJsapiSignature createAgentJsapiSignature(String url) throws WxErrorException {
|
||||
long timestamp = System.currentTimeMillis() / 1000;
|
||||
String noncestr = RandomUtils.getRandomStr();
|
||||
String noncestr = RandomStringUtils.randomAlphanumeric(16);
|
||||
String jsapiTicket = getAgentJsapiTicket(false);
|
||||
String signature = SHA1.genWithAmple(
|
||||
"jsapi_ticket=" + jsapiTicket,
|
||||
|
@ -13,7 +13,6 @@ import com.ossez.wechat.common.model.WeChatAccessToken;
|
||||
import com.ossez.wechat.common.session.StandardSessionManager;
|
||||
import com.ossez.wechat.common.session.WxSessionManager;
|
||||
import com.ossez.wechat.common.util.DataUtils;
|
||||
import com.ossez.wechat.common.util.RandomUtils;
|
||||
import com.ossez.wechat.common.util.crypto.SHA1;
|
||||
import com.ossez.wechat.common.util.http.RequestExecutor;
|
||||
import com.ossez.wechat.common.util.http.RequestHttp;
|
||||
@ -27,6 +26,7 @@ import com.ossez.wechat.wecom.constant.WxCpApiPathConsts;
|
||||
import com.ossez.wechat.wecom.tp.service.*;
|
||||
import lombok.SneakyThrows;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.RandomStringUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.io.File;
|
||||
@ -727,7 +727,7 @@ public abstract class BaseWxCpTpServiceImpl<H, P> implements WxCpTpService, Requ
|
||||
|
||||
private WxJsapiSignature doCreateWxJsapiSignature(String url, String authCorpId, String jsapiTicket) {
|
||||
long timestamp = System.currentTimeMillis() / 1000;
|
||||
String noncestr = RandomUtils.getRandomStr();
|
||||
String noncestr = RandomStringUtils.randomAlphanumeric(16);
|
||||
String signature = SHA1
|
||||
.genWithAmple("jsapi_ticket=" + jsapiTicket, "noncestr=" + noncestr, "timestamp=" + timestamp,
|
||||
"url=" + url);
|
||||
|
Loading…
x
Reference in New Issue
Block a user