diff --git a/README.md b/README.md index 74f1b78..d6a083c 100644 --- a/README.md +++ b/README.md @@ -3,35 +3,35 @@ ### use explame ```java - String appKey = "key"; - String appSecret = "secret"; +String appKey = "key"; +String appSecret = "secret"; - //init appKey appSecret - //NOTE init is slow ,It will be cost 5s - DotEngine dotEngine = new DotEngine(appKey, appSecret); +//init appKey appSecret +//NOTE init is slow ,It will be cost 5s +DotEngine dotEngine = new DotEngine(appKey, appSecret); - //set connect timeout default 10s - dotEngine.setConnectTimeout(2000); +//set connect timeout default 10s +dotEngine.setConnectTimeout(2000); - //set read timeout default 10s - dotEngine.setReadTimeout(2000); +//set read timeout default 10s +dotEngine.setReadTimeout(2000); - //enable log - dotEngine.enableLog(); +//enable log +dotEngine.enableLog(); - String token = null; - try { - //set room user expireTime - token = dotEngine.createToken("room", "user", 24 * 36000); +String token = null; +try { + //set room user expireTime + token = dotEngine.createToken("room", "user", 24 * 36000); - } catch (GenerateTokenException e) { - //create token failure - e.printStackTrace(); - } +} catch (GenerateTokenException e) { + //create token failure + e.printStackTrace(); +} - //get result token ; if failure return null - System.out.println(token); - } +//get result token ; if failure return null +System.out.println(token); + ``` ### dependency @@ -51,14 +51,14 @@ https://oss.sonatype.org/content/groups/staging/cc/dot/dotEngine-java-sdk/ ```xml - - io.jsonwebtoken - jjwt - 0.7.0 - - - com.fasterxml.jackson.core - jackson-databind - 2.8.1 - + + io.jsonwebtoken + jjwt + 0.7.0 + + + com.fasterxml.jackson.core + jackson-databind + 2.8.1 + ``` \ No newline at end of file diff --git a/pom.xml b/pom.xml index 3216836..fc43fc3 100644 --- a/pom.xml +++ b/pom.xml @@ -92,6 +92,8 @@ https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + @@ -135,17 +137,17 @@ - - org.sonatype.plugins - nexus-staging-maven-plugin - 1.6.7 - true - - ossrh - https://oss.sonatype.org/ - true - - + + + + + + + + + + + diff --git a/src/main/java/dot/cc/DotEngine.java b/src/main/java/dot/cc/DotEngine.java index 00fac61..9a14d52 100644 --- a/src/main/java/dot/cc/DotEngine.java +++ b/src/main/java/dot/cc/DotEngine.java @@ -31,7 +31,7 @@ public class DotEngine { private final ObjectMapper objectMapper; - private String dot_engine_api_url = "http://api.dot.cc/api/createToken"; + private String dot_engine_api_url = "https://janus.dot.cc/api/createToken"; private final String app_key; @@ -50,8 +50,8 @@ public void enableLog() { this.debug = true; } - private static final String FORMAT = "{" + "\"room\":\"%s\"," + "\"user_id\":\"%s\"," - + "\"app_key\":\"%s\"," + "\"expires\":%d," + "\"role\":\"%S\"," + "\"nonce\":%d" + "}"; + private static final String FORMAT = "{" + "\"room\":\"%s\"," + "\"user\":\"%s\"," + + "\"appkey\":\"%s\"," + "\"expires\":%d," + "\"role\":\"%S\"," + "\"nonce\":%d" + "}"; /** * init by appKey appSecret @@ -66,7 +66,7 @@ public DotEngine(String appKey, String appSecret) { jwtBuilder = Jwts.builder().signWith(SignatureAlgorithm.HS256, app_secret.getBytes()) .setHeaderParam("alg", "HS256")// .setHeaderParam("typ", "JWT");//这是一个坑 - jwtBuilder.setSubject("test").compact(); + jwtBuilder.setPayload("test").compact(); objectMapper = new ObjectMapper(); } @@ -131,7 +131,7 @@ private String createToken(String room, String user, long expireTime, String rol System.out.println("get jwt src data=" + srcData); } long time = System.currentTimeMillis(); - String data = jwtBuilder.setSubject(srcData).compact(); + String data = jwtBuilder.setPayload(srcData).compact(); if (debug) { System.out.println("get jwt src cost=" + (System.currentTimeMillis() - time) + "ms encode =" + data); @@ -179,7 +179,7 @@ private String getResponseJson(String data) throws GenerateTokenException { BufferedOutputStream out = new BufferedOutputStream(urlConn.getOutputStream()); StringBuilder paramsContent = new StringBuilder(); - paramsContent.append("app_key=").append(URLEncoder.encode(app_key, "UTF-8")); + paramsContent.append("appkey=").append(URLEncoder.encode(app_key, "UTF-8")); paramsContent.append("&sign=").append(URLEncoder.encode(data, "UTF-8")); out.write(paramsContent.toString().getBytes("UTF-8")); out.flush(); diff --git a/src/main/test/jwt.java b/src/main/test/jwt.java new file mode 100644 index 0000000..a40b8f5 --- /dev/null +++ b/src/main/test/jwt.java @@ -0,0 +1,30 @@ +import java.io.UnsupportedEncodingException; +import java.util.Base64; + +import io.jsonwebtoken.Jwts; +import io.jsonwebtoken.SignatureAlgorithm; + +/** + * Created by haizhu on 2016/12/25. + *

+ * haizhu12345@gmail.com + */ +public class jwt { +// mvn install:install-file -Dfile=dotEngine-0.1.0.jar -DgroupId=cc.dot -DartifactId=dotEngien-java-sdk -Dversion=0.1.0 -Dpackaging=jar + //eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJub25jZSI6MSwidXNlcl9pZCI6InVzZXIiLCJyb29tIjoicm9vbSIsImV4cGlyZXMiOjg2NDAwLCJhcHBfa2V5IjoiZG90Y2MiLCJyb2xlIjoiIn0.cRFAD7G9QSkYVh39HH6y8ofppf01vXQcyO18x8N5bhc + public static void main(String args[]) throws UnsupportedEncodingException { + + String result = Jwts.builder().signWith(SignatureAlgorithm.HS256, "dotcc".getBytes()) + .setHeaderParam("alg", "HS256") + .setHeaderParam("typ", "JWT") + .setPayload( + "{\"room\":\"room\",\"user_id\":\"user\",\"app_key\":\"dotcc\",\"expires\":864000,\"role\":\"\",\"nonce\":1}") + .compact(); + System.out.println(result); + // + // Jwts.header() + + System.exit(0); + } + +}