前言
由于前端存在跨域,所以后端实现转发以及将加密放在后端处理,将获取的xml返回前端
一、海康视频demo
链接:https://pan.baidu.com/s/1lFFfP_H2ckBhbIQk6TdueQ
提取码:qxc6
二、实现
2.1 控制层
@PostMapping("getPreviewParamByCameraUuid")
public ResultVO getPreviewParamByCameraUuid(@RequestBody JSONObject requestJSON) {
String url= "http://61.240.12.213:84/openapi/service/vss/preview/getPreviewParamByCameraUuid?token=<TOKEN>";
String xml="";
hikVisionConfig.setCameraUuid(requestJSON.getString("cameraUuid"));
hikVisionConfig.setTime(System.currentTimeMillis());
String postDataJSON = HikVisionUtil.createPostDataJSON(hikVisionConfig);
String token = HikVisionUtil.createToken(hikVisionConfig);
url = url.replace("<TOKEN>", token);
try {
xml= YHttpRequestUtil.postJson(url,postDataJSON);
} catch (Exception e) {
e.printStackTrace();
}
if(token!=null || "".equals(token)){
ResultVOUtil.error(400,"token为空");
}
return ResultVOUtil.success(xml);
}
2.2 配置实体及配置文件
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
/**
* @author chenxd
* @create 2019-11-11 18:28
*/
@Configuration
@ConfigurationProperties(prefix="hikvision")