JWTEncoder.java 1.02 KB
package com.zhaoonline.coupen.jwt;

import com.auth0.jwt.JWT;
import com.auth0.jwt.algorithms.Algorithm;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;

import java.io.UnsupportedEncodingException;

/**
 * Created by ZhaoOnline<br/>
 * User: yangyoupeng<br/>
 * Date: 2016/12/14<br/>
 * Time: 10:38<br/>
 * Description:please descript you class
 */
public class JWTEncoder {
    private static ObjectMapper objectMapper =new ObjectMapper();
    JWTConfig config =new JWTConfig();
    public JWTEncoder(JWTConfig config){
        this.config= config;
    }
    public  String encode(Object object) throws JsonProcessingException, UnsupportedEncodingException {
        String  coupenSeedString =objectMapper.writeValueAsString(object);
        String token = JWT.create()
                .withIssuer(config.getIssuer())
                .withClaim(config.getEncodeKeyName(),coupenSeedString)
                .sign(Algorithm.HMAC256(config.getPassword()));
        return token;
    }
}