// Path: src/org/hy/xsso/appInterfaces/servlet/bean/TokenResponse.java
// public class TokenResponse extends BaseResponse
// {
//     
//     private static final long serialVersionUID = 2652864387178948149L;
// 
//     /** 响应数据 */
//     private TokenResponseData data;
// 
//     
//     
//     /**
//      * 获取：响应数据
//      */
//     public TokenResponseData getData()
//     {
//         return data;
//     }
// 
//     
//     /**
//      * 设置：响应数据
//      * 
//      * @param data 
//      */
//     public void setData(TokenResponseData data)
//     {
//         this.data = data;
//     }
//     
// }
// 
// Path: src/org/hy/xsso/appInterfaces/servlet/bean/TokenResponseData.java
// public class TokenResponseData extends SerializableDef
// {
//     
//     private static final long serialVersionUID = 2029220892157842421L;
// 
//     /** 过期时长（单位：秒） */
//     private Integer expire;
//     
//     /** 访问Token */
//     private String  access_token;
// 
//     
//     
//     /**
//      * 获取：过期时长（单位：秒）
//      */
//     public Integer getExpire()
//     {
//         return expire;
//     }
// 
//     
//     /**
//      * 获取：访问Token
//      */
//     public String getAccess_token()
//     {
//         return access_token;
//     }
// 
//     
//     /**
//      * 设置：过期时长（单位：秒）
//      * 
//      * @param expire 
//      */
//     public void setExpire(Integer expire)
//     {
//         this.expire = expire;
//     }
// 
//     
//     /**
//      * 设置：访问Token
//      * 
//      * @param access_token 
//      */
//     public void setAccess_token(String access_token)
//     {
//         this.access_token = access_token;
//     }
//     
// }
// 
// Path: src/org/hy/xsso/common/BaseServlet.java
// public class BaseServlet extends HttpServlet
// {
//     
//     private static final long serialVersionUID = 123638522879125889L;
//     
//     public static final String $Succeed = "200";
// 
//     
// 
//     /**
//      * 返回Json字符格式的结果
//      * 
//      * @author      ZhengWei(HY)
//      * @createDate  2020-12-28
//      * @version     v1.0
//      *
//      * @param i_Data
//      * @return
//      * @throws Exception
//      */
//     protected String toReturn(Object i_Data) throws Exception
//     {
//         XJSON v_XJ = new XJSON();
//         
//         v_XJ.setReturnNVL(false);
//         
//         return v_XJ.toJson(i_Data).toJSONString();
//     }
//     
//     
//     
//     /**
//      * 获取Post请求Body中的数据
//      * 
//      * @author      ZhengWei(HY)
//      * @createDate  2020-12-31
//      * @version     v1.0
//      *
//      * @param i_Request
//      * @return
//      */
//     protected String getPostData(HttpServletRequest i_Request) 
//     {
//         return FileHelp.getContent(i_Request);
//     }
// }


import java.io.IOException;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.hy.common.Date;
import org.hy.common.ExpireMap;
import org.hy.common.Help;
import org.hy.common.StringHelp;
import org.hy.common.license.AppKey;
import org.hy.common.license.SignProvider;
import org.hy.common.xml.XJava;
import org.hy.common.xml.log.Logger;
import org.hy.xsso.appInterfaces.servlet.bean.TokenResponse;
import org.hy.xsso.appInterfaces.servlet.bean.TokenResponseData;
import org.hy.xsso.common.BaseServlet;
                v_ResponseData.setCode("10012");
                v_ResponseData.setMessage("时间戳无效或已过期！");
                
                i_Response.getWriter().println(this.toReturn(v_ResponseData));
                return;
            }
            
            if ( Help.isNull(v_Signature) )
            {
                v_ResponseData.setCode("10013");
                v_ResponseData.setMessage("签名不正确！");
                
                i_Response.getWriter().println(this.toReturn(v_ResponseData));
                return;
            }
            
            String  v_Code   = "appKey" + v_AppKeyStr + "timestamp" + v_Timestamp;
            AppKey  v_AppKey = $AppKeys.get(v_AppKeyStr);
            boolean v_Verify = SignProvider.verify(v_AppKey.getPublicKey().getBytes() ,v_Code ,v_Signature.getBytes("UTF-8"));
            if ( !v_Verify )
            {
                v_ResponseData.setCode("10013");
                v_ResponseData.setMessage("签名不正确！");
                
                i_Response.getWriter().println(this.toReturn(v_ResponseData));
                return;
            }
            
            v_ResponseData.setCode($Succeed);
            v_ResponseData.setMessage("成功");
// Path: src/org/hy/xsso/appInterfaces/servlet/bean/TokenResponse.java
// public class TokenResponse extends BaseResponse
// {
//     
//     private static final long serialVersionUID = 2652864387178948149L;
// 
//     /** 响应数据 */
//     private TokenResponseData data;
// 
//     
//     
//     /**
//      * 获取：响应数据
//      */
//     public TokenResponseData getData()
//     {
//         return data;
//     }
// 
//     
//     /**
//      * 设置：响应数据
//      * 
//      * @param data 
//      */
//     public void setData(TokenResponseData data)
//     {
//         this.data = data;
//     }
//     
// }
// 
// Path: src/org/hy/xsso/appInterfaces/servlet/bean/TokenResponseData.java
// public class TokenResponseData extends SerializableDef
// {
//     
//     private static final long serialVersionUID = 2029220892157842421L;
// 
//     /** 过期时长（单位：秒） */
//     private Integer expire;
//     
//     /** 访问Token */
//     private String  access_token;
// 
//     
//     
//     /**
//      * 获取：过期时长（单位：秒）
//      */
//     public Integer getExpire()
//     {
//         return expire;
//     }
// 
//     
//     /**
//      * 获取：访问Token
//      */
//     public String getAccess_token()
//     {
//         return access_token;
//     }
// 
//     
//     /**
//      * 设置：过期时长（单位：秒）
//      * 
//      * @param expire 
//      */
//     public void setExpire(Integer expire)
//     {
//         this.expire = expire;
//     }
// 
//     
//     /**
//      * 设置：访问Token
//      * 
//      * @param access_token 
//      */
//     public void setAccess_token(String access_token)
//     {
//         this.access_token = access_token;
//     }
//     
// }
// 
// Path: src/org/hy/xsso/common/BaseServlet.java
// public class BaseServlet extends HttpServlet
// {
//     
//     private static final long serialVersionUID = 123638522879125889L;
//     
//     public static final String $Succeed = "200";
// 
//     
// 
//     /**
//      * 返回Json字符格式的结果
//      * 
//      * @author      ZhengWei(HY)
//      * @createDate  2020-12-28
//      * @version     v1.0
//      *
//      * @param i_Data
//      * @return
//      * @throws Exception
//      */
//     protected String toReturn(Object i_Data) throws Exception
//     {
//         XJSON v_XJ = new XJSON();
//         
//         v_XJ.setReturnNVL(false);
//         
//         return v_XJ.toJson(i_Data).toJSONString();
//     }
//     
//     
//     
//     /**
//      * 获取Post请求Body中的数据
//      * 
//      * @author      ZhengWei(HY)
//      * @createDate  2020-12-31
//      * @version     v1.0
//      *
//      * @param i_Request
//      * @return
//      */
//     protected String getPostData(HttpServletRequest i_Request) 
//     {
//         return FileHelp.getContent(i_Request);
//     }
// }


// Path: src/org/hy/xsso/appInterfaces/servlet/GetAccessTokenServlet.java
import java.io.IOException;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.hy.common.Date;
import org.hy.common.ExpireMap;
import org.hy.common.Help;
import org.hy.common.StringHelp;
import org.hy.common.license.AppKey;
import org.hy.common.license.SignProvider;
import org.hy.common.xml.XJava;
import org.hy.common.xml.log.Logger;
import org.hy.xsso.appInterfaces.servlet.bean.TokenResponse;
import org.hy.xsso.appInterfaces.servlet.bean.TokenResponseData;
import org.hy.xsso.common.BaseServlet;

                v_ResponseData.setCode("10012");
                v_ResponseData.setMessage("时间戳无效或已过期！");
                
                i_Response.getWriter().println(this.toReturn(v_ResponseData));
                return;
            }
            
            if ( Help.isNull(v_Signature) )
            {
                v_ResponseData.setCode("10013");
                v_ResponseData.setMessage("签名不正确！");
                
                i_Response.getWriter().println(this.toReturn(v_ResponseData));
                return;
            }
            
            String  v_Code   = "appKey" + v_AppKeyStr + "timestamp" + v_Timestamp;
            AppKey  v_AppKey = $AppKeys.get(v_AppKeyStr);
            boolean v_Verify = SignProvider.verify(v_AppKey.getPublicKey().getBytes() ,v_Code ,v_Signature.getBytes("UTF-8"));
            if ( !v_Verify )
            {
                v_ResponseData.setCode("10013");
                v_ResponseData.setMessage("签名不正确！");
                
                i_Response.getWriter().println(this.toReturn(v_ResponseData));
                return;
            }
            
            v_ResponseData.setCode($Succeed);
            v_ResponseData.setMessage("成功");
            v_ResponseData.setData(new TokenResponseData());