JSAAS 平台实现 微信类似的TOKEN机制
2024-10-08 03:56:52
在企业微信中,我们在调用微信接口时,我们需要首先获取token,然后根据token,调用API接口方法。这个token是有生命周期的,微信的token默认的生命周期是7200秒。
因此这个token可以保证平台被安全的客户端调用。
JSAAS也需要API接口调用,在平台中JSAAS也实现了类似的接口API接口。
实现方式
1.注册子系统
产生ACCESSTOKEN接口
平台中提供了产生API接口的方法
接口地址:
http://localhost:8080/jsaas/restApi/token/genToken
传入参数:
appId: 应用ID
secret: 密钥
返回数据:
成功返回:
{success:true,data: token}
失败返回:
{success:false,message: "错误信息"}
使用postman测试:
调用接口
在平台中配置 spring-security.xml
这个配置只有上面的URL 接口需要使用token 进行调用。
写一个测试API接口方法。
@RequestMapping(value = "testToken",method={RequestMethod.POST})
@ResponseBody
public JsonResult test(HttpServletRequest request) throws Exception {
String token=request.getHeader("token");
String appId=AppTokenUtil.getAppId(token);
return new JsonResult<>(true, token +"," + appId);
}
客户端调用时,根据上面生成的token,访问api接口。
根据上面的代码可以看到,token 是通过 http头进行传递的,我们可以根据 token 获取appid,表示当前接口为那个应用。
String appId=AppTokenUtil.getAppId(token);
我们可以看到 我们可以通过token 进行访问,如果token过期或者传入错误的token,我们看下测试用例。
最新文章
- 个人psp
- 数据库mysql优化方案
- Hyperion Business Modeling for Microsoft Windows (32-bit)
- HashMap循环遍历方式及其性能对比(zhuan)
- AsyncTask实现异步线程通信
- Matlab boxplot for Multiple Groups(多组数据的箱线图)
- 使用Spring MVC统一异常处理实战
- mybatis系列-13-resultMap总结
- perl /m
- xen vhd操作工具source code研读
- c/c++ 浮点型处理
- 升级后 VTE 类虚拟终端不工作
- SVG图案
- java环境配置教程jde,jre
- 深入理解C++ new/delete, new []/delete[]动态内存管理
- 翻译:JVM虚拟机规范1.7中的运行时常量池部分(二)
- 深入理解Linux内核 学习笔记(4)
- android java 字符串正则表达式 分离特殊字符串
- Bitmap RGB24 4字节对齐
- C++ for循环与迭代器
热门文章
- 【python-sql】sql操作时遇到的坑
- easyui datagrid 三层嵌套
- java_15 System类
- ThinkPhp框架开发微信支付——刷卡支付
- 46-wxpython 4 使用 grid 展示表格
- classpath分析
- This system is not registered with an entitlement server. You can use subscription-manager to register.
- 亚像素Sub Pixel
- WEB框架Django之Form组件
- YII2 在使用控制器调试微信接口时报错 Unable to verify your data submission