海康威视接口调用

综合安防管理平台提供了OpenAPI安全认证库(Java)快速实现接口调用。

  1. Java实现接口调用步骤如下:

  2. 新建Java工程,从Hikvision AI
    Cloud开放平台网站(海康开放平台)上下载“OpenAPI安全认证库(Java)”,获取artemis-http-client.jar,导入到Java工程中。

  3. 设置认证信息,设置ArtemisConfig的host,appKey,appSecret。

  4. 设置接口URL。

  5. 设置接口入参。

  6. 接口调用,调用doPostStringArtemis方法(该方法内部实现了登入认证逻辑),传入接口URL,接口入参,数据提交类型等信息,完成接口调用。

OpenAPI 安全认证库 (JAVA)

下载路径:Hikvision AI Cloud开放平台网站(海康开放平台)

 OpenAPI 安全认证库 (JAVA) V1.1.4 jar包下载地址:https://download.csdn.net/download/Lyq2017901206/87188700

 

源码如下:

package ddm.action;import java.io.InputStream;
import java.util.HashMap;
import java.util.Map;import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.hikvision.artemis.sdk.ArtemisHttpUtil;
import com.hikvision.artemis.sdk.config.ArtemisConfig;public class ArtemisPostTest {/*** 请根据技术支持提供的实际的平台IP/端口和API网关中的合作方信息更换static静态块中的三个参数.* [1 host]* 		host格式为IP:Port,如10.0.0.1:443* 		当使用https协议调用接口时,IP是平台(nginx)IP,Port是https协议的端口;*      当使用http协议调用接口时,IP是artemis服务的IP,Port是artemis服务的端口(默认9016)。* [2 appKey和appSecret]* 		请按照技术支持提供的合作方Key和合作方Secret修改* 	    appKey:合作方Key* 	    appSecret:合作方Secret* 调用前请确认接口传入什么类型入参,是传入json就用doPostStringArtemis方法,是表单提交就用doPostFromArtemis方法**//*** API网关的后端服务上下文为:/artemis*/private static final String ARTEMIS_PATH = "/artemis";/*** 调用POST请求类型接口,这里以获取组织列表为例* 接口实际url:https://ip:port/artemis/api/resource/v1/org/orgList* @return*/public static String callPostStringApi() {/*** https://ip:port/artemis/api/resource/v1/org/advance/orgList* 通过查阅AI Cloud开放平台文档或网关门户的文档可以看到获取组织列表的接口定义,该接口为POST请求的Rest接口, 入参为JSON字符串,接口协议为https。* ArtemisHttpUtil工具类提供了doPostStringArtemis调用POST请求的方法,入参可传JSON字符串, 请阅读开发指南了解方法入参,没有的参数可传null*/ArtemisConfig config = new ArtemisConfig();config.setHost("192.25.10.58:443"); // 代理API网关nginx服务器ip端口config.setAppKey("254685412");  // 密钥appkeyconfig.setAppSecret("IOVFWC66OEREnw25KWRF7");// 密钥appSecretfinal String  getCamsApi = ARTEMIS_PATH + "/api/visitor/v1/privilege/group";JSONObject paramMap = new JSONObject();// post请求参数paramMap.put("name", "123");paramMap.put("pageNo", 1);paramMap.put("pageSize", 10);String body = JSON.toJSON(paramMap).toString();Map<String, String> path = new HashMap<String, String>(2) {{put("https://", getCamsApi);}};String result = null;try {result = ArtemisHttpUtil.doPostStringArtemis(config, path, body, null, null, "application/json", null);} catch (Exception e) {e.printStackTrace();}return result;}public static void main(String[] args) throws Exception {String result = callPostStringApi();System.out.println(result);}}

1.调用申明
在提供的 artemis-http-client.jar 中,请调用 ArtemisHttpUtil.class 提供的函数来调用接口。
对应的 SDKjar 包是在 JDK1.8.0_66-b17 版本中编译 , 使用时请注意这一点 !
 2.如何调用
在调用之前,首先要设置您的 appKey appSecret host
在您的代码要做如下设置:
ArtemisConfig.host ="10.33.59.196:443"; //artemis 网关服务器 ip 端口
ArtemisConfig.appKey ="24341259"; // 秘钥 appkey
ArtemisConfig.appSecret ="M5llsRpDovRZcB3WkhTk";// 秘钥 appSecret
在调用的过程中要注意调用接口的类型 , 按照对应的方法进行调用。
3.doGetArtemis(header 参数)
GET 接口请求 , 继承之前 doGetArtemis 方法 , 没有 header 参数 ;
4.参数介绍
Path artemis 配置的 get 请求的路径是一个数组长度为 1 Hashmap 集合,只存一组数据,key http 的请求方式, value host 后面的 path 路径。
querys map 类型 get 请求的 url 查询参数( url 中的 query 参数 , 没有就是为空)
形 如
"?aa=1&&bb=2"
形 式 参 数 变 成
map
键值对
query.put("aa","1");query.put("bb","2")
accept: 指定客户端能够接收的内容类型,该参数传空时的默认全部类型接受 contentType: 请求的与实体对应的 MIME 信息,该参数传空时的取默认值。

访客功能接口

参数返回举例

 测试接口返回举例

注意事项
在调用 application/json 类型的 post 的请求时 , 需要指定 cotentType 的类型 为”application/json”, 这个需要特别注意。

端口:默认443,可以询问技术人员端口号是多少,端口不对会报SSL解析错误 。

  OpenAPI 安全认证库 (JAVA) V1.1.4 jar包下载地址:https://download.csdn.net/download/Lyq2017901206/87188700

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/43589.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何访问海康威视摄像机的后台

1、首先打开海康威视网络摄像头的web管理页面,点击输入用户名密码进行登录。2、然后在弹出来的界面中,点击打开配等我继续说如何访问海康威视摄像机的后台。 —— 必须修改的三个参数分别是:appkey,secret里面的参数,ip其余的参数用默认值即可。其中有一个要注意的点是,这…

OneNav Extend网址导航书签系统源码开源版

简介&#xff1a; OneNav Extend 是一款开源免费的书签&#xff08;导航&#xff09;管理程序&#xff0c;使用PHP SQLite 3开发&#xff0c;界面简洁&#xff0c;安装简单&#xff0c;使用方便。 OneNav可帮助你你将浏览器书签集中式管理&#xff0c;解决跨设备、跨平台、跨…

秘密胶囊开源版-匿名留言程序源码

正文&#xff1a; 秘密胶囊开源版-最新匿名留言程序源码 秘密胶囊程序由Pings原创&#xff0c;所有代码均为手动编写。 本项目是秘密胶囊项目的最初版本&#xff0c;所有源码均未加密&#xff0c;各位有基础的自寻二开。 本次开源的1.0版本只实现了写留言&#xff0c;查留言…

UML九种图的分类

UML九种图的分类 一、 UML从整体上分类 UML九种图&#xff0c;具体的可以分为五类。 1、用例图&#xff1a;从用户角度描述系统功能&#xff0c;并指出各功能的操作者。 2、静态图&#xff1a;是UML中从系统静态角度来描述的系统。 包括类图和对象图。 类图&#xff1a;描述系…

【不专一的开发】UML(一)——用例图、类图、对象图

目录 脑图 用例图 对象图 脑图 UML&#xff08;Unified Modeling Language&#xff09;统一建模语言。它适用于各类系统的建模&#xff0c;为了可以方便开发而统一的一种通过不同类型生动的图来表达系统的各种功能结构。 用例图 【概念】Use case diagrame描述作为用户的角度…

作为一名高级开发者需要具备的技能之画UML类图

写在前面&#xff1a;大家好&#xff01;我是晴空๓。如果博客中有不足或者的错误的地方欢迎在评论区或者私信我指正&#xff0c;感谢大家的不吝赐教。我的唯一博客更新地址是&#xff1a;https://ac-fun.blog.csdn.net/。非常感谢大家的支持。一起加油&#xff0c;冲鸭&#x…

[UML] --- 类图

1 类图简介 类图以反映类的结构(属性、操作)以及类之间的关系为主要目的&#xff0c;描述了软件系统的结构&#xff0c;是一种静态建模方法 类图中的“类”与面向对象面向对象面向对象语言中的“类”的概念是对应的&#xff0c;它用来描述系统中的有意义的概念&#xff0c;包括…

UML 类图各符号含义速查

链接&#xff1a;https://pan.baidu.com/s/1RePYipe_4hnW_EtCbD-r9Q 提取码&#xff1a;0000 概述 类图 类名 访问修饰符 变量名 : 返回类型&#xff08;例&#xff1a; Username : String&#xff09; 访问修饰符 方法名 () : 返回类型&#xff08;例&#xff1a; getUserna…

快速识别UML类图

在UML类图中&#xff0c;常见的有以下几种关系: 泛化&#xff08;Generalization&#xff09;, 实现&#xff08;Realization&#xff09;&#xff0c;关联&#xff08;Association)&#xff0c;聚合&#xff08;Aggregation&#xff09;&#xff0c;组合(Composition)&#xf…

小马识途分享创建品牌百科的流程和技巧

大家知道百度百科是人人可参与协作的网络百科全书&#xff0c;无论是创建词条、编辑现有词条&#xff0c;都可以亲手为百度百科作出贡献。虽然理论上百度百科是可以人人创建的&#xff0c;但并不是创建后马上就可以得到展示的&#xff0c;需要通过百度百科的审核机制。所以&…

在线类图各种UML图分享

好工具一定要分享给最好的朋友&#xff0c;ProcessOn助您和好友一起高效办公&#xff01; https://www.processon.com/i/5a37774de4b0dce99f032667

UML图:类图 --详细介绍

类图的概念 描述类、接口及它们之间关系的图&#xff0c;显示系统中各个类的静态结构 类图的元素 类 面向对象系统组织结构的核心对一组具有相同属性、操作、关系和语义的对象的抽象包括名称部分&#xff08;Name&#xff09;、属性部分&#xff08;Attribute&#xff09;…

UML-认识六种箭头,轻松读懂UML图

进行系统设计时&#xff0c;UML是一种常见的面向对象结构设计方式&#xff0c;里面的各种箭头表示经常会把人弄糊涂&#xff0c;如果不能正确理解&#xff0c;实现阶段就会出大问题&#xff0c;失之毫厘&#xff0c;谬以千里&#xff0c;下面带着大家认识下6种常用箭头。 1. 泛…

一文学会UML类图

1.关系图解 2.类图详解 1.类 类图分三层&#xff1a; 第一层显示类的名称&#xff0c;如果是抽象类&#xff0c;则就 用斜体显示。 第二层是类的特性&#xff0c;通常就是字段和属性。 第三层是类 的 操 作 &#xff0c; 通 常 是 方 法 或 行 为 &#xff0c;前面的符号表示…

[UML] 类图介绍 —— 程序员(灵魂画手)必备画图技能之一

统一建模语言(Unified Modeling Language&#xff0c;UML) 可分类成&#xff1a; 功能模型&#xff1a;从用户的角度展示系统的功能&#xff0c;包括用例图。对象模型&#xff1a;采用对象&#xff0c;属性&#xff0c;操作&#xff0c;关联等概念展示系统的结构和基础&#…

人工智能存在安全隐患?网络安全还得靠人来维护!

前言 继今年3月对ChatGPT进行安全审查后&#xff0c;意大利隐私监管机构表示将计划创建一个人工智能咨询委员会&#xff0c;对目前所有人工智能平台的数据搜集行为进行密切审查。 意大利数据保护机构 Garante 某高级官员表示&#xff0c;该委员会将加入目前由四人组成的隐私法…

短信接收流程分析

5,短信接收 如果有信息,RIL层会主动上报消息,RIL.java 的processUnsolicited方法会进行分发,根据网络制式,信息分为GSM和CDMA, 在此就以GSM信息为例论述, processUnsolicited方法对RIL_UNSOL_RESPONSE_NEW_SMS消息处理逻辑如下, 1,调用responseString方法从ril层读取消息内容…

Android 发送短信

一、发送短信的方法 使用 Intent 隐式调用系统短信应用进行发送 Uri uri Uri.parse("smsto:10086");Intent it new Intent(Intent.ACTION_SENDTO, uri);it.putExtra("sms_body", "Hello World&#xff01;");startActivity(it); 使…

量化策略和level2行情数据股票市场需求大吗?

国内量化交易起步较晚&#xff0c;大约15年开始&#xff0c;20年开始爆发&#xff0c;21年量化私募规模飙升。由于容量过大&#xff0c;出现了一个头部量化私募中性策略导致大幅回调的问题。对于a股来说&#xff0c;量化交易仍然是一种相对较新的投资方式。自20年以来&#xff…

DFQ量化论文阅读

Data-Free Quantization Through Weight Equalization and Bias Correction 高通的训练后量化&#xff0c;提高性能 量化的不同水平 水平1&#xff1a;无需数据和反向传播 水平2&#xff1a;需要数据但不需要反向传播&#xff0c;例如IAO的校准 水平3&#xff1a;需要数据也…