|
|
@@ -1,6 +1,10 @@
|
|
|
package com.jzg.quotation.dajia.crawler.component;
|
|
|
|
|
|
|
|
|
+import cn.hutool.core.date.DateUtil;
|
|
|
+import cn.hutool.jwt.JWT;
|
|
|
+import cn.hutool.jwt.JWTPayload;
|
|
|
+import cn.hutool.jwt.JWTValidator;
|
|
|
import com.alibaba.fastjson2.JSON;
|
|
|
import com.jzg.commons.exception.SystemException;
|
|
|
import com.jzg.quotation.commons.component.RequestComponent;
|
|
|
@@ -114,7 +118,7 @@ public class DaJiaCrawlerRequestComponent {
|
|
|
public DaJiaCrawlerCompaniesResponse.ListDTO companies(DaJiaCrawlerCompaniesRequest request, String cDptCde, HttpHeaders headers) {
|
|
|
try {
|
|
|
Map<String, Object> describe = PropertyUtils.describe(request);
|
|
|
- DaJiaCrawlerCompaniesResponse daJiaCrawlerCompaniesResponse = requestComponent.get(RequestUrl.CAPTCHA.getRequestUrl(daJiaCrawlerProperties.getBaseUrl()), describe, "", DaJiaCrawlerCompaniesResponse.class, headers);
|
|
|
+ DaJiaCrawlerCompaniesResponse daJiaCrawlerCompaniesResponse = requestComponent.get(RequestUrl.COMPANIES.getRequestUrl(daJiaCrawlerProperties.getVhlUrl()), describe, "", DaJiaCrawlerCompaniesResponse.class, headers);
|
|
|
return daJiaCrawlerCompaniesResponse.getList()
|
|
|
.stream()
|
|
|
.filter(x -> cDptCde.equals(x.getCDptCde()))
|
|
|
@@ -175,13 +179,27 @@ public class DaJiaCrawlerRequestComponent {
|
|
|
* @return
|
|
|
*/
|
|
|
public <DaJiaResponse> DaJiaResponse request(CrawlerRequestUrlStandard crawlerRequestUrlStandard, Object request, Class<DaJiaResponse> responseClass, HttpHeaders headers) {
|
|
|
- ResponseEntity<DaJiaCrawlerBaseResponse> responseEntity = requestComponent.objectPost(crawlerRequestUrlStandard.getRequestUrl(daJiaCrawlerProperties.getVhlUrl()), request, DaJiaCrawlerBaseResponse.class, headers);
|
|
|
+ // 参数加密
|
|
|
+ DaJiaCrawlerBaseRequest crawlerBaseRequest = new DaJiaCrawlerBaseRequest(request);
|
|
|
+ ResponseEntity<DaJiaCrawlerBaseResponse> responseEntity = requestComponent.objectPost(crawlerRequestUrlStandard.getRequestUrl(daJiaCrawlerProperties.getVhlUrl()), crawlerBaseRequest, DaJiaCrawlerBaseResponse.class, headers);
|
|
|
DaJiaCrawlerBaseResponse daJiaCrawlerBaseResponse = responseEntity.getBody();
|
|
|
assert daJiaCrawlerBaseResponse != null;
|
|
|
+ // 参数解密
|
|
|
String decrypt = DESEncryption.decrypt(daJiaCrawlerBaseResponse.getResult());
|
|
|
return JSON.parseObject(decrypt, responseClass);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 校验token(获取新的token)
|
|
|
+ *
|
|
|
+ * @param daJiaCrawlerCheckTokenRequest 校验token
|
|
|
+ * @param headers 请求头
|
|
|
+ * @return 车型列表
|
|
|
+ */
|
|
|
+ public DaJiaCrawlerCheckTokenResponse checkToken(DaJiaCrawlerCheckTokenRequest daJiaCrawlerCheckTokenRequest, HttpHeaders headers) {
|
|
|
+ return request(RequestUrl.CHECK_TOKEN, daJiaCrawlerCheckTokenRequest, DaJiaCrawlerCheckTokenResponse.class, headers);
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 车型查询
|
|
|
*
|