园区增值业务类API概述及向导
快速开始接口概述主要针对终端用户信息统计类场景,包括客户端信息、流量信息等接口。
登录认证客户端向服务器下发登录认证请求,服务器返回一个Token和过期时间。 此处为模拟调测环境,已经为各位开发者创建好北向用户帐号。在调用真实环境的北向接口之前,应在iMaster NCE-Campus上创建具有Open Api Operator角色的帐号,用于获取Token。操作详情请参见创建北向用户。 请求URL 获取Token值使用如下URL: https://devzone.huawei.com/cloudcampus/controller/v2/tokens Headers 此API使用如下Headers参数进行登录认证: Headers参数值Content-Typeapplication/jsonAcceptapplication/jsonAccept-Languageen-US 请求示例 请求参数userName 和password为您的华为云帐号和密码。 curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Accept-Language: en-US' -d '{"userName":"huaweiUser","password":"huaweiPassword"}' 'https://devzone.huawei.com/cloudcampus/controller/v2/tokens' 登录认证成功响应 { "errcode": "0", "errmsg": "get token successfully.", "data": { "expiredDate": "2020-01-08T17:10:11,887+08:00", "token_id": "aHVhd2VpcGFvZnU6SHVhd2VpMTIjJA==" }} 下发RESTful请求客户端携带上面的Token再下发RESTful请求给服务器。 请求URL 调用查询用户组API使用如下URL: https://devzone.huawei.com/controller/campus/v1/accountservice/usergroups Headers 此API使用如下Headers参数下发RESTful请求: Headers参数值Content-Typeapplication/jsonAcceptapplication/jsonAccept-Languageen-USX-ACCESS-TOKEN{token_id} 请求示例 X-ACCESS-TOKEN取值为已获取的Token值token_id。 curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Accept-Language: en-US' --header 'X-ACCESS-TOKEN: aHVhd2VpcGFvZnU6SHVhd2VpMTIjJA==' -d '{"parentId":" a91e1696-02a2-4a68-bad4-aa639359c8cf","name":"friendName","address":"Xihu North Community","postalCode":"125744","adminEmail":"admin%40huawei.com","description":"common user group"}' 'https://devzone.huawei.com/cloudcampus/controller/campus/v1/accountservice/usergroups' 响应 { "data": { "address": "Xihu North Community", "adminEmail": "admin%40huawei.com", "bsid": "", "description": "common user group", "fullPathName": "", "id": "3e7d7186-dff6-48cf-8254-61cceae00090", "name": "friendName", "orderId": 0, "parentId": "a91e1696-02a2-4a68-bad4-aa639359c8cf", "postalCode": "125744" }, "errcode": "0", "errmsg": ""} 向导创建北向用户
,可使用上面获取的用户名和密码登录到iMaster NCE-Campus。
REST API约束与注意
接口规范 iMaster NCE-Campus的所有REST接口的URL地址均遵从下述规范: <OP> / <service-path> / <resource> ? <query>
HTTP Headers iMaster NCE-Campus对REST接口的Headers进行了一定的限制,主要包括如下几个参数:
方法说明 方法URI格式功能说明幂等性GET/1、获取数据并且返回状态。2、指向要检索的数据节点。是PUT/1、更新数据并且返回状态。2、指向要存储的数据节点。是POST/1、创建一个节点并返回状态。2、指向要被存储的数据节点。否DELETE/1、删除一条数据且返回状态。2、指向要被删除的数据。否 状态码定义 RESTful采用HTTP状态码来报告操作结果。 状态码描述2xx操作成功400操作失败,错误的详细描述在errmsg中体现401未授权,常见错误为token填错、或已超时403不允许访问,常见错误为该管理员无对应权限或访问的资源不存在404请求的资源不存在,常见错误为,尝试GET不存在的资源415不支持请求中的报文体格式,常见错误为,未填Content-Type,或Content-Type的值不为application/json500服务器内部错误,常见错误为请求header中缺少必填字段503服务不可用,常见错误为ddos攻击 Java SDK向导准备工作 如果您还没有下载Java SDK,请先点击这里CloudCampus Java SDK JAR下载我们的SDK JAR文件,SDK源码请参考CloudCampus Java SDK Sources。 注:推荐使用JDK1.8及以上版本。 导入SDK包 将您下载的SDK JAR包导入您的Java工程,如果您使用maven构建您的工程,使用此命令将SDK安装到您的maven本地仓: mvn org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install-file -Dfile=cloudcampus-1.0.0.jar 随后在您的maven工程的pom.xml文件中引入SDK依赖: <dependency> <groupId>com.huawei.cloudcampus.api</groupId> <artifactId>cloudcampus</artifactId> <version>1.0.0</version> </dependency> 初始化客户端 使用com.huawei.cloudcampus.api.ApiClient类来初始化您的SDK,您需要配置北向API使用的端口号(18002),iMaster NCE-Campus控制器的IP以及北向帐号和密码(请参考创建北向用户),如下所示: ApiClient apiClient = new ApiClient(); apiClient.setTenantName("tenant@north.com"); apiClient.setTenantPwd("Admin@1234"); apiClient.setHost("139.9.213.72"); apiClient.setPort("18002"); SDK使用示例 根据租户ID查询最后一次计费时间在指定时间范围之内的用户流量信息: TimeFlowStInfosApi api = new TimeFlowStInfosApi(apiClient);Gson gson = new Gson();String siteId = "a91e1696-02a2-4a68-bad4-aa639359c8cf";Integer pageIndex = 1;Integer pageSize = 20;String sort = "userName";String userName = "zhangsan";String usedTime = "20";String usedFlow = "10";String beginTime = "2017-11-24 17:26:55";String endTime = "2017-11-25 17:26:55";TimeFlowStInfosOutputDto response = api.getTimeFlowStInfoList(siteId, pageIndex, pageSize, sort, userName, usedTime, usedFlow, beginTime, endTime);String result = gson.toJson(response);System.out.println(result); Python SDK向导准备工作 如果您还没有下载Python SDK,请先点击这里CloudCampus Python SDK Sources下载我们的Python SDK源码文件。 安装SDK 下载完成后,解压文件。打开cmd命令行,运行如下命令进入CloudCampus Python SDK源码文件夹,例如运行如下命令: cd FilesPath FilesPath为CloudCampus Python SDK源码文件夹 运行如下命令安装Python SDK: pip install -r requirements.txt python setup.py install 安装完成后,运行如下命令查看SDK是否安装成功: pip list 导入SDK包 以查询用户流量信息接口为例: 导入ApiClient、Configuration,和本次调用的api(TimeFlowStInfosApi) from swagger_client.api_client import ApiClientfrom swagger_client.apis.time_flow_st_infos_api import TimeFlowStInfosApifrom swagger_client.configuration import Configuration 初始化客户端 使用ApiClient类来初始化您的SDK,您需要配置北向API使用的端口号(18002),iMaster NCE-Campus控制器的IP以及北向帐号和密码(请参考创建北向用户),如下所示: tenantName = 'tenant@north.com'tenantPwd = 'Admin@1234'host = '139.9.213.72'port = '18002'config = Configuration(host, port, tenantName, tenantPwd)api_client = ApiClient(config) SDK使用示例 根据租户ID查询最后一次计费时间在指定时间范围之内的用户流量信息: api = TimeFlowStInfosApi(api_client)siteId = 'a91e1696-02a2-4a68-bad4-aa639359c8cf'pageIndex = 1pageSize = 20sort = 'userName'userName = 'zhangsan'usedTime = '20'usedFlow = '10'beginTime = '2017-11-24 17:26:55'endTime = '2017-11-25 17:26:55'model = api.get_time_flow_st_info_list(site_id=siteId, page_index=pageIndex, page_size=pageSize, sort=sort, user_name=userName, used_time=usedTime, used_flow=usedFlow, begin_time=beginTime, end_time=endTime) | |
华为开发者空间发布
让每位开发者拥有一台云主机
- 点赞
- 收藏
- 关注作者
评论(0)