一、通过HttpClient 获取:
代码如下
public static String getHttp(String appKey,String appSecert,String url) throws Exception {
// 定义请求参数
List<NameValuePair> requestData = new ArrayList<>();
//参数可以写死,也可以传入
requestData.add(new BasicNameValuePair("appKey", appKey));
requestData.add(new BasicNameValuePair("appSecret", appSecert));
// 创建 HttpClient
CloseableHttpClient httpClient = HttpClients.createDefault();
// 创建 POST 请求 如果是GET请求就获取HttpGet
HttpPost httpPost = new HttpPost(url); //url 可以写死, 也可以传入
httpPost.setEntity(new UrlEncodedFormEntity(requestData));
// 发送请求并获取响应
HttpResponse response = httpClient.execute(httpPost);
// 处理响应
int statusCode = response.getStatusLine().getStatusCode();
String token = "";
if (statusCode == 200) {
HttpEntity entity = response.getEntity();
String responseText = EntityUtils.toString(entity);
JSONObject jsonObject = JSON.parseObject(responseText);
Map<String, String> data = (Map<String, String>) jsonObject.get("data");
token = data.get("accessToken");
//将token 写入你要存放的地方 比如redis 中
}
// 关闭 HttpClient
httpClient.close();
return token;
}