您的位置:首页 > 移动开发 > 微信开发

java微信网页授权获取用户信息以及JSSDK自定义分享等功能<四>

2015-12-08 13:47 1036 查看
其他忘记附上源码的类。以及全部的jar下载

public class AccessToken {
/**
* 获取到的凭证
*/
private String token;
/**
* 凭证有效时间,单位:秒
*/
private int expiresIn;

public String getToken() {
return null==token?"":token;
}

public void setToken(String token) {
this.token = token;
}

public int getExpiresIn() {
return expiresIn;
}

public void setExpiresIn(int expiresIn) {
this.expiresIn = expiresIn;
}
}</span>


public class JsapiTicket {
/**
* 有效时长
*/
private int expiresIn;
/**
* js调用票据
*/
private String ticket;
public int getExpiresIn() {
return expiresIn;
}
public void setExpiresIn(int expiresIn) {
this.expiresIn = expiresIn;
}
public String getTicket() {
return null==ticket?"":ticket;
}
public void setTicket(String ticket) {
this.ticket = ticket;
}
}


public class TokenUtil extends Thread {
// 第三方用户唯一凭证
public static String appid = "";
// 第三方用户唯一凭证密钥
public static String appsecret = "";
public static AccessToken accessToken = null;
public static JsapiTicket jsapiTicket = null;
public void run() {
while (true) {
try {
accessToken = CommonUtil.getAccessToken(appid, appsecret);
jsapiTicket = CommonUtil.getJsapiTicket(accessToken.getToken());
if (null != accessToken&&null!=jsapiTicket) {
System.out.println("获取access_token成功,有效时长"+accessToken.getExpiresIn()+"秒 ,token:"+accessToken.getToken());
System.out.println("获取jsapi_ticket成功,有效时长"+jsapiTicket.getExpiresIn()+"秒,jsapi_ticket:"+jsapiTicket.getTicket());
// 休眠7000秒
Thread.sleep((accessToken.getExpiresIn() - 200) * 1000);
} else {
// 如果access_token为null,60秒后再获取
Thread.sleep(60 * 1000);
}
} catch (Exception e) {
try {
Thread.sleep(60 * 1000);
} catch (InterruptedException e1) {
}
}
}
}
}


public class MyX509TrustManager implements X509TrustManager {

public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException {
}

public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException {
}

public X509Certificate[] getAcceptedIssuers() {
return null;
}
}
public class CheckInterceptor
implements HandlerInterceptor{

public void afterCompletion(HttpServletRequest arg0,
HttpServletResponse arg1, Object arg2, Exception arg3)
throws Exception {
}

public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1,
Object arg2, ModelAndView arg3) throws Exception {
}

/**
* 返回true,表示允许继续调用Controller
* 返回false,表示阻止Controller执行
*/
public boolean preHandle(HttpServletRequest request, HttpServletResponse response,
Object arg2) throws Exception {

return true;
}

}

项目结构如下:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: