# fasc-op-java-sdk
**Repository Path**: VipCrack/fasc-op-java-sdk
## Basic Information
- **Project Name**: fasc-op-java-sdk
- **Description**: 法大大混合云OP2.0 JAVA语言版SDK
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: op-007801
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2024-10-17
- **Last Updated**: 2024-10-23
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# OP Java SDK 说明
# 简介
欢迎使用法大大开发者工具套件(SDK),OP Java SDK 是法大大 OP2.0 API在线文档的配套工具。
# 版本说明
目前版本 v2.0
## 快速开始
###一、springboot项目,引入sdk的starter依赖
1. 引入依赖
```xml
com.fdd.op
op-java-sdk-spring-boot-starter
2.0.2.8
commons-logging
commons-logging
1.2
compile
commons-codec
commons-codec
1.15
```
2. 添加配置(application.properties)
```properties
# 法大大OP服务接口地址(必填)
fdd.sdk.server-url = xxxxx
fdd.sdk.appid = xxxx
fdd.sdk.appkey = xxxx
# http 客户端超时配置(选填)
# http客户端连接超时, 默认1000
fdd.sdk.connect-timeout= 1000
# http客户端响应超时, 默认30000
fdd.sdk.read-timeout= 30000
# 鉴权方式 oauth、sign, 默认使用sign签名
fdd.sdk.auth-type = xxxx
```
3. 支持自动注入的类型: `FddClientService`、`FddSignClientService`
4. 使用demo
```
@Autowired
private FddClientService fddClientService; //toklen鉴权的service
@Autowired
private FddSignClientService fddSignClientService; //sign鉴权的service
GetAccountRequest request = new GetAccountRequest();
request.setAccountId("1519567956789477378");
GetAccountResponse response = fddClientService.execute(request);
System.out.println(MessageFormat.format("code:{0}, message:{1}", response.getCode(), response.getMessage()));
if(response != null && "0".equals(response.getCode())){
System.out.println(writer.write(response.getData()));
}
```
###二、普通的java项目, 引入jar包
```
//法大大OP2.0服务端地址
private static String serverUrl = "http://local-op2.fabigbig.com:6442";
//法大大分配的appId
private static final String appId = "721522";
//法大大分配的appId对应的秘钥
private static final String appKey = "hVpnGJPciVuAc1VXJk9CV7mbZCZejdaO";
//初始化本地缓存保存token信息, 可自定义实现FddTokenStore的类自行使用redis等中间件保存token信息
FddTokenStore tokenStore = new CacheTokenStoreImpl();
//初始化客户端
DefaultFddClient fddClient = new DefaultFddClient(serverUrl, appId, appKey, Constants.AUTH_OAUTH, 1000, 30000);
fddClient.tokenStore(tokenStore);
//查询用户详情
GetAccountRequest request = new GetAccountRequest();
request.setAccountId("1519567956789477378");
GetAccountResponse response = fddClient.execute(request);
System.out.println(MessageFormat.format("code:{0}, message:{1}", response.getCode(), response.getMessage()));
if(response != null && "0".equals(response.getCode())){
System.out.println(writer.write(response.getData()));
}
```
## 最小化接口对接Demo
从api创建账户到签署完成然后出证的最小化流程,代码实现流程可查看SDK包内的com.fdd.op.demo.Demo.java
# 模块说明
- SDK 以接口命名使用一对XXXRequest和XXXResponse实现接口快速调用
如查询用户详情接口, 接口地址为:/user/api/account/getAccount
SDK包内以request.api.account包下会有一个GetAccountRequest类
和response.api.account包内的GetAccountResponse类是相对应的
则初始化客户端后只需要使用com.fdd.op.sdk.request.api.account.GetAccountRequest创建一个request对象
使用fddClient调用后会相对应的返回com.fdd.op.sdk.response.api.account.GetAccountResponse对象