| | |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.fasterxml.jackson.databind.ObjectMapper; |
| | | import com.stylefeng.guns.core.util.ToolUtil; |
| | | import com.stylefeng.guns.modular.api.UserInfoController; |
| | | import com.stylefeng.guns.modular.system.util.HttpClientUtil; |
| | | import com.stylefeng.guns.modular.system.util.RedisUtil; |
| | | import com.stylefeng.guns.modular.system.util.UUIDUtil; |
| | | import org.apache.commons.codec.digest.DigestUtils; |
| | | import org.apache.http.entity.ContentType; |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.http.*; |
| | | import org.springframework.mock.web.MockMultipartFile; |
| | | import org.springframework.stereotype.Component; |
| | | import org.springframework.web.client.RestTemplate; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | import java.io.ByteArrayInputStream; |
| | | import java.io.IOException; |
| | | import java.io.InputStream; |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.net.URLDecoder; |
| | |
| | | * @return |
| | | */ |
| | | public String getAccessToken(){ |
| | | String url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wxc89ecab90d24edd8&secret=bca863174d22736a4a9758a67484947e"; |
| | | String url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wxe91f1af7638aa5dd&secret=a787e1a462715604e0c9528b6d8960d1"; |
| | | String backData = restTemplate.getForObject(url, String.class); |
| | | String accessToken = JSONObject.parseObject(backData).getString("access_token"); |
| | | return accessToken; |
| | |
| | | param.put("expire_interval", 1); |
| | | param.put("path", path); |
| | | param.put("query", query); |
| | | param.put("env_version", "release"); |
| | | param.put("env_version", "trial"); |
| | | HttpHeaders httpHeaders = new HttpHeaders(); |
| | | MediaType type=MediaType.parseMediaType("application/json;charset=UTF-8"); |
| | | httpHeaders.setContentType(type); |
| | |
| | | return body1; |
| | | } |
| | | |
| | | public String getPhone(String code) throws Exception{ |
| | | String wxAppletsAccessToken = getAccessToken(); |
| | | String url = "https://api.weixin.qq.com/wxa/business/getuserphonenumber?access_token=" + wxAppletsAccessToken; |
| | | Map<String, Object> param = new HashMap<>(); |
| | | param.put("code",code); |
| | | HttpHeaders httpHeaders = new HttpHeaders(); |
| | | MediaType type=MediaType.parseMediaType("application/json;charset=UTF-8"); |
| | | httpHeaders.setContentType(type); |
| | | HttpEntity<Map<String, Object>> requestEntity = new HttpEntity<>(param, httpHeaders); |
| | | ResponseEntity<String> exchange = restTemplate.exchange(url, HttpMethod.POST, requestEntity, String.class); |
| | | String body1 = exchange.getBody(); |
| | | // String body1 ="{\"errcode\":0,\"errmsg\":\"ok\",\"phone_info\":{\"phoneNumber\":\"15708179461\",\"purePhoneNumber\":\"15708179461\",\"countryCode\":\"86\",\"watermark\":{\"timestamp\":1720420413,\"appid\":\"wxc89ecab90d24edd8\"}}}"; |
| | | |
| | | JSONObject jsonObject = JSON.parseObject(body1); |
| | | // 从JSON对象中获取phone_info子对象 |
| | | JSONObject phoneInfo = jsonObject.getJSONObject("phone_info"); |
| | | // 从phone_info中获取phoneNumber |
| | | String phoneNumber = phoneInfo.getString("phoneNumber"); |
| | | System.out.println("Phone Number: " + phoneNumber); |
| | | |
| | | |
| | | return phoneNumber; |
| | | } |
| | | |
| | | |
| | | @Autowired |
| | | private UserInfoController userInfoController; |
| | | public String rid(String path, String query) throws Exception{ |
| | | // 获取access_token |
| | | String accessToken = getAccessToken(); |
| | | // 替换CREATE_CODE_URL |
| | | String url = "https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token="+accessToken; |
| | | // 发送请求 |
| | | String stringApiResult = null; |
| | | try { |
| | | HashMap<String, String> map = new HashMap<>(); |
| | | map.put("path", path+"?driverId=979"); |
| | | HttpHeaders headers = new HttpHeaders(); |
| | | headers.setContentType(MediaType.APPLICATION_JSON); |
| | | HttpEntity requestEntity = new HttpEntity(map, headers); |
| | | ResponseEntity<byte[]> rep = restTemplate.exchange(url, HttpMethod.POST, requestEntity, byte[].class); |
| | | byte[] bytes = rep.getBody(); |
| | | ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes); |
| | | MultipartFile file = new MockMultipartFile(ContentType.APPLICATION_OCTET_STREAM.toString(), byteArrayInputStream); |
| | | ResultUtil resultUtil = userInfoController.uploadImg(file, null, null); |
| | | StringBuilder sb = new StringBuilder(stringApiResult); |
| | | stringApiResult = sb.toString(); |
| | | } catch (Exception e) { |
| | | } |
| | | return stringApiResult; |
| | | } |
| | | |
| | | } |