文档首页 > > 开发指南> 应用侧开发> 使用Postman调测

使用Postman调测

分享
更新时间: 2020/07/01 GMT+08:00

概述

Postman是网页调试与辅助接口调用的工具,具有界面简洁清晰、操作方便快捷的特性,可以处理用户发送的HTTP请求,例如:GET,PUT、POST,DELETE等,支持用户修改HTTP请求中的参数并返回响应数据。

为充分了解接口,建议提前获取应用侧API参考查阅。我们已经写好了Postman的collection,在Collection中接口的请求结构体已经完成可以直接使用。

本文档以Postman为例,模拟应用服务器以HTTPS协议接入物联网平台,调测以下API接口:

前置条件

安装并配置Postman

  1. 安装Postman。

    1. 访问Postman官网 ,下载并安装Postman(本文以postman 7.17.0为例)。

      安装Postman依赖.NET Framework 4.5组件,如果您的系统上没有该组件,访问.NET Framework 4.5进行下载。

    2. 填写邮箱、用户名和密码注册Postman。

  2. 导入Postman环境变量。

    1. 点击右上角的图标,打开“MANAGE ENVIRONMENTS”窗口。

    2. 点击“Import”,导入IoTDA.postman_environment.json文件(下载Collection解压后获取)。

    3. 点击“Manage Environments”,选择导入的“IoTDA”环境。

    4. 修改IAM终端节点“IAMEndpoint”、物联网平台终端节点“IOTDAEndpoint”、IAM用户名“IAMUserName”、登录密码“IAMPassword”、账号名“IAMDoaminId”、区域“region”。

    5. 返回主页,选择环境变量为刚导入的“IoTDA”。

  3. 导入“应用侧API调用(V5版本).postman_collection.json”。

  4. 导入成功后,显示如下。

调测“获取IAM用户Token”接口

在访问物联网平台业务接口前,应用服务器需要调用“获取IAM用户Token”接口鉴权,华为云认证通过后向应用服务器返回鉴权令牌X-Subject-Token

应用服务器需要构造一个HTTP请求,请求示例如下:

POST https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens 
Content-Type: application/json 

{ 
    "auth": { 
        "identity": { 
            "methods": [ 
                "password" 
            ], 
            "password": { 
                "user": { 
                    "name": "username", 
                    "password": "********", 
                    "domain": { 
                        "name": "domainname" 
                    } 
                } 
            } 
        }, 
        "scope": { 
            "project": { 
                "name": "xxxxxxxx" 
            } 
        } 
    } 
}

注:“username”即IAM用户名、“password”即登录华为云密码、“domainname”即账号名,“projectname”项目,您可以参考我的凭证页面获取。

参考API文档,调测获取IAM用户Token接口。

  1. 配置“获取IAM用户Token”接口的HTTP方法、URLHeaders

  2. 配置“获取IAM用户Token”接口的Body

  3. 点击“Send”,在下方查看返回码和响应消息内容。

  4. 请将返回头域中的的X-Subject-Token更新到“IoTDA”环境的“X-Auth-Token”参数中,以便于在调用其它接口时使用。若超过令牌有效时间,需要重新调用鉴权接口。

    这里我们已经在postman中自动更新了“X-Auth-Token”参数,使用时无需手动操作。

调测“查询IAM用户可以访问的项目列表”接口

在访问物联网平台业务接口前,应用服务器需要调用“查询IAM用户可以访问的项目列表”接口获取用户的项目ID,用于后续访问物联网平台业务接口。

应用服务器需要构造一个HTTP请求,请求示例如下:

GET https://iam.cn-north-4.myhuaweicloud.com/v3/auth/projects
Content-Type: application/json
X-Auth-Token: ********

参考API文档,调测查询IAM用户可以访问的项目列表接口。

  1. 配置“查询IAM用户可以访问的项目列表”接口的HTTP方法、URLHeaders

  2. 点击“Send”,在下方查看返回码和响应消息内容。

  3. 返回body中包含一个projects列表,查找其中“name”参数值与“IoTDA”环境中“region”参数值相同的条目,取其“id”参数值更新到“IoTDA”环境中“project_id”参数,以便于在调用其它接口时使用。

    这里我们已经在postman中自动更新了“project_id”参数,使用时无需手动操作。

调测“创建产品”接口

在设备接入物联网平台前,应用服务器需要调用此接口创建产品,后续注册设备时需要使用这里创建的产品。

应用服务器需要构造一个请求,请求示例如下:

POST https://iotda.cn-north-4.myhuaweicloud.com/v5/iot/{project_id}/products
Content-Type: application/json
X-Auth-Token: ********

{
  "name" : "Thermometer",
  "device_type" : "Thermometer",
  "protocol_type" : "MQTT",
  "data_format" : "binary",
  "manufacturer_name" : "ABC",
  "industry" : "smartCity",
  "description" : "this is a thermometer produced by Huawei",
  "service_capabilities" : [ {
    "service_type" : "temperature",
    "service_id" : "temperature",
    "description" : "temperature",
    "properties" : [ {
      "unit" : "centigrade",
      "min" : "1",
      "method" : "R",
      "max" : "100",
      "data_type" : "decimal",
      "description" : "force",
      "step" : 0.1,
      "enum_list" : [ "string" ],
      "required" : true,
      "property_name" : "temperature",
      "max_length" : 100
    } ],
    "commands" : [ {
      "command_name" : "reboot",
      "responses" : [ {
        "response_name" : "ACK",
        "paras" : [ {
          "unit" : "km/h",
          "min" : "1",
          "max" : "100",
          "para_name" : "force",
          "data_type" : "string",
          "description" : "force",
          "step" : 0.1,
          "enum_list" : [ "string" ],
          "required" : false,
          "max_length" : 100
        } ]
      } ],
      "paras" : [ {
        "unit" : "km/h",
        "min" : "1",
        "max" : "100",
        "para_name" : "force",
        "data_type" : "string",
        "description" : "force",
        "step" : 0.1,
        "enum_list" : [ "string" ],
        "required" : false,
        "max_length" : 100
      } ]
    } ],
    "option" : "Mandatory"
  } ],
  "app_id" : "jeQDJQZltU8iKgFFoW060F5SGZka"
}

参考API文档,调测物联网平台创建产品接口。

:在以下步骤中,只呈现样例调测用到的参数。

  1. 配置“创建产品”接口的HTTP方法URLHeaders

  2. 配置“创建产品”接口的BODY。

  3. 点击“Send”,在下方查看返回码和响应消息内容。

  4. 将返回的“product_id”更新到“IoTDA”环境中的“product_id”参数中,用于后续其它接口使用。

    注:在postman中自动更新了“product_id”参数,使用时无需手动操作。

调测“查询产品”接口

应用服务器如果需要查询之前创建的产品详情,可以调用此接口。

应用服务器需要构造一个请求,请求示例如下:

GET https://iotda.cn-north-4.myhuaweicloud.com/v5/iot/{project_id}/products/{product_id}
Content-Type: application/json
X-Auth-Token: ********

接下来参考API文档,调测物联网平台查询产品接口。

:在以下步骤中,只呈现样例调测用到的参数。

  1. 配置“查询产品”接口的HTTP方法URLHeaders

  2. 点击“Send”,在下方查看返回码和响应消息内容。

调测“创建设备”接口

在设备接入物联网平台前,应用服务器需要调用此接口在物联网平台创建设备。在设备接入物联网平台时携带设备唯一标识,完成设备的接入认证。

应用服务器需要构造一个HTTP请求,请求示例如下:

POST https://iotda.cn-north-4.myhuaweicloud.com/v5/iot/{project_id}/devices
Content-Type: application/json
X-Auth-Token: ********

{
  "node_id" : "ABC123456789",
  "device_name" : "dianadevice",
  "product_id" : "b640f4c203b7910fc3cbd446ed437cbd",
  "auth_info" : {
    "auth_type" : "SECRET",
    "secure_access" : true,
    "fingerprint" : "dc0f1016f495157344ac5f1296335cff725ef22f",
    "secret" : "3b935a250c50dc2c6d481d048cefdc3c",
    "timeout" : 300
  },
  "description" : "watermeter device"
}

参考API文档,调测物联网平台注册设备接口。

:在以下步骤中,只呈现样例调测用到的参数。

  1. 配置“创建设备”接口的HTTP方法URLHeaders

  2. 配置“创建设备”接口的Body

  3. 点击“Send”,在下方查看返回码和响应消息内容。

  4. 请将返回的“device_id”更新到“IoTDA”环境中的“device_id”参数中,用于后续其它接口使用。

    注意:在postman中自动更新了“device_id”参数,使用时无需手动操作。

调测“查询设备”接口

应用服务器需要查询在物联网平台创建的设备详情时,可以调用此接口。

应用服务器需要构造一个HTTP请求,请求示例如下:

GET https://iotda.cn-north-4.myhuaweicloud.com/v5/iot/{project_id}/devices/{device_id}
Content-Type: application/json
X-Auth-Token: ********

参考API文档,调测物联网平台查询设备接口。

:在以下步骤中,只呈现样例调测用到的参数。

  1. 配置“查询设备”接口的HTTP方法URLHeaders

  2. 点击“Send”,在下方查看返回码和响应消息内容。

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问