定時重新整理獲取八爪魚token(獲取微信token也是一樣的道理)
阿新 • • 發佈:2019-02-05
package com.bazhuayu.utils;
import java.util.ArrayList;
import java.util.List;
import java.util.Timer;
import java.util.TimerTask;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
public class TokenUtil {
private static String token;
public static String httpToken() {
String urlstring = " http://dataapi.bazhuayu.com/token";
/* JSONObject json = null; */
try {
// 獲取當前客戶端物件
HttpClient httpClient = new DefaultHttpClient();
// 根據地址獲取請求
HttpPost request = new HttpPost(urlstring);
// 建立一個NameValuePair陣列,用於儲存欲傳送的引數
List<NameValuePair> params = new ArrayList<NameValuePair>();
// 新增引數
params.add(new BasicNameValuePair("username", "username"));
params.add(new BasicNameValuePair("password", "password"));
params.add(new BasicNameValuePair("grant_type", "password"));
// 設定編碼
request.setEntity(new UrlEncodedFormEntity(params, "UTF-8"));
// 通過請求物件獲取響應物件
HttpResponse response = httpClient.execute(request);
HttpEntity entity = response.getEntity();
// 判斷網路連線狀態碼是否正常(0--200都是正常)
if (response.getStatusLine().getStatusCode() == 200) {
token = EntityUtils.toString(entity, "utf-8");
/* JSONObject.parseObject(result); */
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return token;
}
static {
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
token = httpToken();
}
}, 0, 86399000);
}
public static String getToken() {
return token;
}
}
import java.util.ArrayList;
import java.util.List;
import java.util.Timer;
import java.util.TimerTask;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
public class TokenUtil {
private static String token;
public static String httpToken() {
String urlstring = " http://dataapi.bazhuayu.com/token";
/* JSONObject json = null; */
try {
// 獲取當前客戶端物件
HttpClient httpClient = new DefaultHttpClient();
// 根據地址獲取請求
HttpPost request = new HttpPost(urlstring);
// 建立一個NameValuePair陣列,用於儲存欲傳送的引數
List<NameValuePair> params = new ArrayList<NameValuePair>();
// 新增引數
params.add(new BasicNameValuePair("username", "username"));
params.add(new BasicNameValuePair("password", "password"));
params.add(new BasicNameValuePair("grant_type", "password"));
// 設定編碼
request.setEntity(new UrlEncodedFormEntity(params, "UTF-8"));
// 通過請求物件獲取響應物件
HttpResponse response = httpClient.execute(request);
HttpEntity entity = response.getEntity();
// 判斷網路連線狀態碼是否正常(0--200都是正常)
if (response.getStatusLine().getStatusCode() == 200) {
token = EntityUtils.toString(entity, "utf-8");
/* JSONObject.parseObject(result); */
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return token;
}
static {
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
token = httpToken();
}
}, 0, 86399000);
}
public static String getToken() {
return token;
}
}