一、服务端配置文件:application.yml
```
config:
#应用id
appId:
#应用密钥
appSecret:
#服务地址
server-url: https://open.digitalcitizen.com.cn:7280/idauth
```
二、接口代码
接口controller类:com.nlp.ctids.controller.ValidateIdentityController
接口方法:com.nlp.ctids.controller.ValidateIdentityController#apply
```
@RequestMapping("/{method}/{authMode}")
@ResponseBody
public String apply(@PathVariable String method, @PathVariable String authMode, @RequestBody String jsonData, HttpServletRequest request) {
String accessToken = tokenService.getAccessToken();
Map<String, String> headers = new HashMap<>();
headers.put("Authorization", accessToken);
headers.put("appId", config.appId);
String post = HttpUtil.post(config.serverUrl + "/validateIdentity/" + method + "/" + authMode, jsonData, headers);
return post;
}
```
三、获取token方法代码
方法类:com.nlp.ctids.service.TokenService
```
public CommonResponse getAccessToken(String appId, String appSecret) {
CommonResponse commonResponse = tokenMap.get(appId + appSecret);
try {
if (commonResponse != null) {
Map<String, Object> data = (Map<String, Object>) commonResponse.getData();
Long expireTime = (Long) data.get("expireTime");
if (expireTime == null || expireTime < System.currentTimeMillis()) {
commonResponse = null;
}
}
} catch (Exception e) {
commonResponse = null;
}
if (commonResponse != null) {
return commonResponse;
}
Map<String, String> data = new HashMap<>();
data.put("appId", appId);
data.put("appSecret", appSecret);
String response = HttpUtil.post(config.serverUrl + "/auth/getCode", JSON.toJSONString(data), null);
commonResponse = JSON.parseObject(response, CommonResponse.class);
if ("0".equals(commonResponse.getCode())) {
tokenMap.put(appId + appSecret, commonResponse);
}
return commonResponse;
}
```
- CTID身份认证服务能力接入文档
- 身份认证服务介绍
- 身份认证能力介绍
- 名词解释
- 产品定价
- 计费说明
- 接入集成介绍
- API接口列表
- 鉴权接口
- 身份认证接口
- 集成示例
- 集成示例总图
- 客户端加密方式接入示例
- 安卓客户端示例
- IOS客户端示例
- Java服务端示例
- PHP服务端示例
- 服务端加密接入方式示例
- Java服务端加密示例
- PHP服务端加密示例
- 管理系统介绍
- 登录
- 机构应用信息
- 身份验证日志
- 常见问题
- 客户端加密接入方式FAQ
- Android端FAQ
- IOS端FAQ
- JAVA服务端FAQ
- PHP服务端FAQ
- 服务端加密接入方式FAQ
- JAVA服务端加密FAQ
- PHP服务端加密FAQ
- 平台FAQ
- 服务端常见异常
- 资料下载
- 客户端加密接入方式DEMO源码
- 服务端加密接入方式DEMO源码