资源简介
在环信官网对java调用例子很少,至少我没找到。我在网上找到一个demo,进行了一系列bug修复后重新共享给大家。
![](http://www.nz998.com/pic/60067.jpg)
代码片段和文件信息
package com.lianqu.huanxin.core.model;
import java.util.HashMap;
import java.util.Map;
import org.apache.http.client.methods.HttpEntityEnclosingRequestbase;
import org.apache.http.client.methods.HttpRequestbase;
import com.lianqu.huanxin.core.service.TalkHttpService;
import com.lianqu.huanxin.core.tool._Global;
public class Authentic {
private static Token token = new Token();
private TalkHttpService service;
public Authentic(TalkHttpService service) {
this.service = service;
}
public Authentic(TalkHttpService service Token token) {
this.service = service;
if(token!=null){
Authentic.token = token;
}
}
public Token getToken() {
this.flush();
return token;
}
public void task() {
this.flush();
}
public void applyAuthentication(HttpEntityEnclosingRequestbase request) {
this.flush();
request.addHeader(“Authorization““Bearer “+token.toString());
}
public void applyAuthentication(HttpRequestbase request) {
this.flush();
request.addHeader(“Authorization““Bearer “+token.toString());
}
private void flush() {
synchronized(Authentic.class){
try{
if(token.isExpire()){
if(_Global.APP_CLIENT_ID!=null&&_Global.APP_CLIENT_SECRET!=null){
Mapject>param = new HashMapject>();
param.put(“grant_type““client_credentials“);
param.put(“client_id“_Global.APP_CLIENT_ID);
param.put(“client_secret“_Global.APP_CLIENT_SECRET);
TalkNode res = service.request(_Global.URR_TOKEN_Global.HTTP_METHOD_POSTparamnullnull);
if(res!=null&&res.getAccess_token()!=null&&res.getExpires_in()!=null&&res.getExpires_in()>0){
token = new Token(res.getAccess_token()res.getExpires_in()*1000+System.currentTimeMillis());
}
}
}
}catch(Exception e){
e.printStackTrace();
}
}
}
public static class Token {
private String token;
private Long expire;
public Token() {}
public Token(String token long expire) {
this.token = token;
this.expire = expire;
}
public String getToken() {
return token;
}
public void setToken(String token) {
this.token = token;
}
public Long getExpire() {
return expire;
}
public void setExpire(Long expire) {
this.expire = expire;
}
public boolean isExpire() {
return expire==null||System.currentTimeMillis()>expire;
}
@Override
public String toString() {
return token;
}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-10-31 18:38 HXTest\
文件 529 2017-10-31 18:38 HXTest\.classpath
目录 0 2017-10-31 18:38 HXTest\.myeclipse\
文件 285 2017-11-29 10:34 HXTest\.myme
文件 1533 2017-10-31 18:38 HXTest\.project
目录 0 2017-10-31 18:39 HXTest\.settings\
文件 493 2017-10-31 18:38 HXTest\.settings\.jsdtscope
文件 107 2017-11-29 10:46 HXTest\.settings\org.eclipse.core.resources.prefs
文件 395 2017-10-31 18:38 HXTest\.settings\org.eclipse.jdt.core.prefs
文件 450 2017-10-31 18:38 HXTest\.settings\org.eclipse.wst.common.component
文件 252 2017-10-31 18:38 HXTest\.settings\org.eclipse.wst.common.project.facet.core.xm
文件 49 2017-10-31 18:38 HXTest\.settings\org.eclipse.wst.jsdt.ui.superType.container
文件 6 2017-10-31 18:38 HXTest\.settings\org.eclipse.wst.jsdt.ui.superType.name
目录 0 2017-11-29 10:46 HXTest\src\
目录 0 2017-11-29 10:46 HXTest\src\com\
目录 0 2017-11-29 10:35 HXTest\src\com\lianqu\
目录 0 2017-11-29 10:36 HXTest\src\com\lianqu\huanxin\
目录 0 2017-11-29 10:35 HXTest\src\com\lianqu\huanxin\core\
目录 0 2017-11-29 10:35 HXTest\src\com\lianqu\huanxin\core\model\
文件 2473 2017-11-21 09:23 HXTest\src\com\lianqu\huanxin\core\model\Authentic.java
文件 1703 2017-11-21 09:23 HXTest\src\com\lianqu\huanxin\core\model\TalkChat.java
文件 1055 2017-11-21 09:23 HXTest\src\com\lianqu\huanxin\core\model\TalkChatBody.java
文件 285 2017-11-21 09:23 HXTest\src\com\lianqu\huanxin\core\model\TalkChatPayload.java
文件 1356 2017-11-21 09:23 HXTest\src\com\lianqu\huanxin\core\model\TalkGroup.java
文件 840 2017-11-21 09:23 HXTest\src\com\lianqu\huanxin\core\model\TalkGroupFriend.java
文件 1045 2017-11-21 09:23 HXTest\src\com\lianqu\huanxin\core\model\TalkGroupMember.java
文件 2591 2017-11-21 17:29 HXTest\src\com\lianqu\huanxin\core\model\TalkGroupNew.java
文件 3675 2017-11-21 09:23 HXTest\src\com\lianqu\huanxin\core\model\TalkMsg.java
文件 8301 2017-11-21 09:23 HXTest\src\com\lianqu\huanxin\core\model\TalkNode.java
文件 1860 2017-11-21 09:23 HXTest\src\com\lianqu\huanxin\core\model\TalkRoom.java
文件 371 2017-11-21 09:23 HXTest\src\com\lianqu\huanxin\core\model\TalkRoomMember.java
............此处省略64个文件信息
评论
共有 条评论