在企业微信中,我们在调用微信接口时,我们需要首先获取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,我们看下测试用例。