2017-01-24 8 views
1

Wie generiere ich JWT Token von Android. Ich habe versucht, die folgenden:Wie generiere ich JWT Token von Android

token = JWT.create().withClaim("email",username) 
         .sign(Algorithm.HMAC256("secret")); 
       System.out.println(" JWS token : "+ token); 

Aber ich habe diese Ausnahme:

java.lang.NoSuchMethodError: No static method encodeBase64URLSafeString([B)Ljava/lang/String; in class Lorg/apache/commons/codec/binary/Base64; or its super classes (declaration of 'org.apache.commons.codec.binary.Base64' appears in /system/framework/ext.jar) 
                  at com.auth0.jwt.JWTCreator.sign(JWTCreator.java:283) 
                  at com.auth0.jwt.JWTCreator.access$100(JWTCreator.java:23) 
                  at com.auth0.jwt.JWTCreator$Builder.sign(JWTCreator.java:264) 
                  at se.stigasoft.netwrapper.NetCom.jwtWork(NetCom.java:321) 

ich auch andere methos aus einer anderen Bibliothek versucht.

String compactJws = Jwts.builder() 
      .setSubject("Joe") 
      .signWith(SignatureAlgorithm.HS256, "secret".getBytes()) 
      .compact(); 

dieser generiert das Token. Aber ich weiß nicht, wie man meine Daten wie Name sendet, Wertpaar, das ich benutzte, um in der Postmethode zu senden.

. Bitte helfen

Antwort

0

Nach viel im Internet für die letzten Tag Graben fand ich die Lösung für diesen

String compactJws = Jwts.builder().claim("email",username).claim("password",password) 
       .signWith(SignatureAlgorithm.HS256, "secret".getBytes()) 
       .compact() 

dies ist der richtige Weg, um die Token von der App Seite zu generieren. Damit werden die Daten nicht im einfachen Header gesendet.