nVisual API接口使用说明(nVisual让网络物理层管理不再缺失)

网友投稿 222 2022-10-11


nVisual API接口使用说明(nVisual让网络物理层管理不再缺失)

1、nVisual API接口作用

nVisual API为用户提供访问nVisual的程序接口。可用作web浏览器接口调用或第三方操作平台调用来实现操作nVIsual。

2、nVisual API接口定义规范

nVisual API接口整体采用resful风格

URL路径规则:

ip:端口/wapi/v1/...

示例:demo.nvisual.com:8081/wapi/v1/authenticate

请求方式:

GET:从服务端获取资源

POST:新建资源到服务端

PUT:更新服务端资源(客户端提供改变后的完整资源)

DELETE:删除服务器资源

示例:

GET  /wapi/v1/nodes  查询所有的节点

GET  /wapi/v1/nodes/{nodeId}  通过nodeId查询节点

POST  /wapi/v1/nodes 创建节点

PUT  /wapi/v1/nodes/{nodeId}  通过nodeId修改节点信息

DELETE  /wapi/v1/nodes/{nodeId}  通过nodeId删除节点和节点下的子节点

请求参数:

request header:可存放token

地址栏参数:如/wapi/v1/nodes/{nodeId}中{nodeId}

请求body数据:入参数据

响应格式:

{ "code": 200, "message": "success", "data": {}}

具体返回详见具体API接口

3、nVisual API接口调用步骤

postman调用测试:

1、访问获取token   /wapi/v1/authenticate   POST

body参数{"username":"","passward":""}

2、获取token后,访问其他API接口,例如根据nodeId获取节点(node)信息

"+获取到的token。

4、nVisual API 接口调用代码示例(JAVA示例、PYTHON\C#后续补充)

JAVA通过API接口:

1、获取token

public String getToken(){ //获取token String token = ""; Map map = new HashMap(); map.put("username","dongjunjie"); map.put("password",""); String jsonString = JSON.toJSONString(map); try { String responseToken = HttpUtil.postJSON(nvisualApiConfig.getNvisualUrl()+"/wapi/v1/authenticate",jsonString); Map responseTokenMap = JSONObject.parseObject(responseToken,Map.class); if("200".equals(responseTokenMap.get("code").toString())){ Map data = (Map)responseTokenMap.get("data"); token = (String) data.get("access_token"); } } catch (Exception e) { token = ""; } return token;}

* json格式的参数 post请求 * 获取json数据 * */ public static String postJSON(String url,String paramjson){ HttpPost post = new HttpPost(url); HttpClient = HttpClientBuilder.create().build(); try { StringEntity stringEntity = new StringEntity(paramjson, ContentType.APPLICATION_JSON); post.setEntity(stringEntity); HttpResponse response = if(response.getStatusLine().getStatusCode()==200){ //获取响应的内容对象 HttpEntity = response.getEntity(); //转换结果位字符串 return EntityUtils.toString( } } catch (IOException e) { e.printStackTrace(); } return null; }

2、根据nodeId获取node示例

public Nodes getNodesById(Long nodeId,String token){ Nodes nodes = null; String nodesJsonString= HttpClient.getJSON(nvisualApiConfig.getNvisualUrl()+"/wapi/v1/nodes/"+nodeId,"Bearer "+token); Map responseMap = JSONObject.parseObject(nodesJsonString,Map.class); if("200".equals(responseMap.get("code").toString())){ nodes = JSON.toJavaObject((JSON) responseMap.get("data"),Nodes.class); } return nodes;}

static String getJSON(String url,String token){ //1、创建请求方式对象 HttpGet get = new HttpGet(url); //2、创建客户端对象 HttpClient client = HttpClientBuilder.create().build(); HttpHeaders headers=new HttpHeaders(); headers.setBearerAuth(token); //设置token get.addHeader("Authorization", token); // 传输的类型 get.addHeader("Content-Type", "application/x- try { //3、获取请求结果 HttpResponse response = client.execute(get); //4、校验 if(response.getStatusLine().getStatusCode()==200){ //获取响应的内容对象 HttpEntity = response.getEntity(); //转换结果位字符串 return EntityUtils.toString( } } catch (IOException e) { e.printStackTrace(); } return null; }


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:java单点登录(SSO)的实现
下一篇:融云 x 天聊,用声音打造「无压力社交」栖息地(融云app官网下载)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~