智慧工地-API
  1. 基本对接
智慧工地-API
  • 对接介绍
  • 基本对接
    • 获取Token
      GET
    • 获取Token(签名验证方式)
      GET
    • 获取授权项目列表
      POST
  • 人员实名制
    • 实名制API对接说明
    • 业务接口
      • 获取工种列表
      • 获取学历列表
      • 获取绑定的项目列表
      • 获取项目区域列表
      • 获取分包公司列表
      • 获取分组列表
      • 获取人员列表
      • 获取项目设备列表
      • 获取考勤记录(出入记录)
      • 获取在场人员列表
    • 统计接口
      • 获取人员年龄分布
      • 获取人员工种分布
      • 获取当天每小时进出场统计
      • 获取本周每天进出场统计
      • 获取本周数量统计
      • 获取当天数量统计
    • 数据同步
      • 说明
      • 同步工人信息
      • 同步工人考勤信息
  • 塔机
    • 获取项目塔机列表
      POST
    • 获取塔机记录列表
      POST
    • 保存塔机基本信息
      POST
    • 塔机记录数据上传
      POST
  • 升降机
    • 报警码
    • 获取升降机设备信息
      POST
    • 获取工地升降机列表(全部)
      POST
    • 获取升降机最新数据
      POST
    • 获取升降机历史记录
      POST
    • 保存升降机配置信息
      POST
    • 上传升降机信息记录
      POST
  • 卸料平台
    • 报警码
    • 获取设备信息
      POST
    • 获取设备最新一条数据
      POST
    • 获取设备数据
      POST
  • 雾炮喷淋
    • 获取喷淋设备列表
      POST
    • 控制喷淋设备开关
      POST
  • 配电设备
    • 获取配电设备详情
    • 添加设备实时数据
  • 环境监测
    • 添加环境监测数据
    • 获取环境监测数据历史记录
  • 视频监控
    • 视频播放说明
    • 获取视频监控列表
  • 智慧实验室
  • 标准养护室
    • 温湿度传输控制仪
    • 温湿度系统数据转发(推送)协议
    • 智慧工地项目标养室设备
      • 说明
      • 查询设备列表
      • 查询设备温湿度历史记录
    • 查询设备列表
    • 查询设备温湿度数据
  • 公共类
    • 返回结果对象ApiResult
    • RSAUtil类
  1. 基本对接

获取Token(签名验证方式)

GET
/interface/v1/getTokenWithSign
平台分配一对AppKey与AppScreat,调用此接口时验证签名是否正确。
签名生成方法:sign = {appKey}+{randomString}+{年月日}+{appSecret}
签名方法示例:
public static void main(String[] args) {
String appKey = "a2554199a3bbb0b7";
String appSecret = "ee25442bbb700911";
String rid = RandomUtil.randomString(32);
String ymd = DateUtil.format(new Date(), "yyyyMMdd");
String signString = appKey + rid + ymd + appSecret;
String sign = DigestUtils.md5Hex(signString);
System.out.println("sign:" + sign);
}

请求参数

Query 参数
appKey
string 
必需
平台分配的AppKey
示例值:
a2554199a3bbb0b7
rid
string 
必需
32位随机数(可以是UUID)
示例值:
5jgkxtefzmfz9pmvjp714jth2nnbbezn/bEgECZaLUiXUZHzdur9kwiEsQwLcdpwwx1RkT2FrcdyLD6mH13fkt5nY7Sz1veC2SwTzF86ePRQMKY3nBFvg3OHRxpLlPo7B9l+JkP38Ta/CnBOnj/WeYDo/gdJLBoatrHTKL+VwM=
sign
string 
可选
签名值(签名方法见文档:响应示例--获取示例)
示例值:
6feec021e109abbe52f3c8830735d64a

示例代码

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location --request GET '/interface/v1/getTokenWithSign?appKey=a2554199a3bbb0b7&rid=5jgkxtefzmfz9pmvjp714jth2nnbbezn/bEgECZaLUiXUZHzdur9kwiEsQwLcdpwwx1RkT2FrcdyLD6mH13fkt5nY7Sz1veC2SwTzF86ePRQMKY3nBFvg3OHRxpLlPo7B9l+JkP38Ta/CnBOnj/WeYDo/gdJLBoatrHTKL+VwM='

返回响应

🟢200成功
application/json
Body
code
integer 
状态码
必需
message
string 
信息说明
必需
data
string 
Token值
必需
示例
package people.api;

import java.io.IOException;
import java.security.NoSuchAlgorithmException;
import java.security.spec.InvalidKeySpecException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;

import org.junit.jupiter.api.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.junit4.SpringRunner;

import com.alibaba.fastjson.JSON;
import com.zkyc.zhgd.api.api.commons.ApiResult;

import cn.hutool.core.date.DateUtil;
import cn.hutool.http.HttpUtil;

@RunWith(SpringRunner.class)
public class GetTokenWithMd5 {

	/**
	 * 获取token(签名方式)
	 * 
	 * @throws IOException
	 * @throws NoSuchAlgorithmException
	 * @throws InvalidKeySpecException
	 */
	@Test
//	@org.junit.Ignore
	public void testGetTokenWithMd5() throws IOException, NoSuchAlgorithmException, InvalidKeySpecException {

		String appKey = "a2554199a3bbb0b7";
		String appSecret = "ee25442bbb700911";
		String serverUrl = "http://api.zhihuigongdiyun.com";

		String rid = UUID.randomUUID().toString().replaceAll("-", "");
		String sign = appKey + rid + DateUtil.format(new Date(), "yyyyMMdd") + appSecret;

		String url = serverUrl + "/interface/v1/getTokenWithSign";
		Map<String, Object> requestBody = new HashMap<>();
		requestBody.put("appKey", appKey);
		requestBody.put("rid", rid);
		requestBody.put("sign", sign);
		String resultJson = HttpUtil.post(url, requestBody);
		System.out.println(resultJson);
		ApiResult result = JSON.parseObject(resultJson, ApiResult.class);
		System.out.println(result.toString());
		System.out.println("Token:" + result.getData());

	}

}
上一页
获取Token
下一页
获取授权项目列表
Built with