设备接入 IoTDA设备接入 IoTDA

计算
弹性云服务器 ECS
裸金属服务器 BMS
云手机 CPH
专属主机 DeH
弹性伸缩 AS
镜像服务 IMS
函数工作流 FunctionGraph
云耀云服务器 HECS
VR云渲游平台 CVR
特惠算力专区
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
弹性文件服务 SFS
存储容灾服务 SDRS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
专属企业存储服务
云存储网关 CSG
专属分布式存储服务 DSS
CDN与智能边缘
内容分发网络 CDN
智能边缘云 IEC
智能边缘小站 IES
智能边缘平台 IEF
人工智能
AI开发平台ModelArts
华为HiLens
图引擎服务 GES
图像识别 Image
文字识别 OCR
自然语言处理 NLP
内容审核 Moderation
图像搜索 ImageSearch
医疗智能体 EIHealth
园区智能体 CampusGo
企业级AI应用开发专业套件 ModelArts Pro
人脸识别服务 FRS
对话机器人服务 CBS
视频分析服务 VAS
语音交互服务 SIS
知识图谱 KG
人证核身服务 IVS
IoT物联网
设备接入 IoTDA
设备管理 IoTDM(联通用户专用)
全球SIM联接 GSL
IoT数据分析
路网数字化服务 DRIS
IoT边缘 IoTEdge
设备发放 IoTDP
开发与运维
软件开发平台 DevCloud
项目管理 ProjectMan
代码托管 CodeHub
流水线 CloudPipeline
代码检查 CodeCheck
编译构建 CloudBuild
部署 CloudDeploy
云测 CloudTest
发布 CloudRelease
移动应用测试 MobileAPPTest
CloudIDE
Classroom
开源镜像站 Mirrors
应用魔方 AppCube
云性能测试服务 CPTS
应用管理与运维平台 ServiceStage
云应用引擎 CAE
视频
实时音视频 SparkRTC
视频直播 Live
视频点播 VOD
媒体处理 MPC
视频接入服务 VIS
管理与监管
统一身份认证服务 IAM
消息通知服务 SMN
云监控服务 CES
应用运维管理 AOM
应用性能管理 APM
云日志服务 LTS
云审计服务 CTS
标签管理服务 TMS
资源管理服务 RMS
应用身份管理服务 OneAccess
区块链
区块链服务 BCS
可信跨链服务 TCS
可信分布式身份服务
智能协作
IdeaHub
开发者工具
SDK开发指南
API签名指南
DevStar
HCloud CLI
Terraform
Ansible
云生态
云市场
合作伙伴中心
华为云培训中心
其他
管理控制台
消息中心
产品价格详情
系统权限
我的凭证
客户关联华为云合作伙伴须知
公共问题
宽限期保留期
奖励推广计划
活动
容器
云容器引擎 CCE
云容器实例 CCI
容器镜像服务 SWR
应用编排服务 AOS
多云容器平台 MCP
基因容器 GCS
容器洞察引擎 CIE
云原生服务中心 OSC
容器批量计算 BCE
容器交付流水线 ContainerOps
应用服务网格 ASM
网络
虚拟私有云 VPC
弹性公网IP EIP
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
虚拟专用网络 VPN
云连接 CC
VPC终端节点 VPCEP
数据库
云数据库 RDS
数据复制服务 DRS
文档数据库服务 DDS
分布式数据库中间件 DDM
云数据库 GaussDB (for openGauss)
云数据库 GaussDB(for MySQL)
云数据库 GaussDB NoSQL
数据管理服务 DAS
数据库和应用迁移 UGO
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
可信智能计算服务 TICS
推荐系统 RES
云搜索服务 CSS
数据可视化 DLV
数据湖治理中心 DGC
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
应用中间件
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
API网关 APIG
分布式缓存服务 DCS
分布式消息服务RocketMQ版
企业应用
域名注册服务 Domains
云解析服务 DNS
云速建站 CloudSite
网站备案
商标注册
华为云WeLink
会议
隐私保护通话 PrivateNumber
语音通话 VoiceCall
消息&短信 MSGSMS
云管理网络
SD-WAN 云服务
边缘数据中心管理 EDCM
云桌面 Workspace
应用与数据集成平台 ROMA Connect
ROMA资产中心 ROMAExchange
API全生命周期管理 ROMA API
安全与合规
安全技术与应用
DDoS防护 ADS
Web应用防火墙 WAF
云防火墙 CFW
应用信任中心 ATC
企业主机安全 HSS
容器安全服务 CGS
云堡垒机 CBH
数据库安全服务 DBSS
数据加密服务 DEW
数据安全中心 DSC
云证书管理服务 CCM
SSL证书管理 SCM
漏洞扫描服务 VSS
态势感知 SA
威胁检测服务 MTD
管理检测与响应 MDR
安全治理云图 Compass
认证测试中心 CTC
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
专属云
专属计算集群 DCC
解决方案
高性能计算 HPC
SAP
混合云灾备
华为工业云平台 IMC
价格
成本优化最佳实践
专属云商业逻辑
用户服务
帐号中心
费用中心
成本中心
资源中心
企业管理
工单管理
客户运营能力
国际站常见问题
支持计划
专业服务
合作伙伴支持计划
更新时间:2021-12-21 GMT+08:00
分享

修改产品

接口说明

应用服务器可调用此接口修改已导入物联网平台的指定产品模型,包括产品模型的服务、属性、命令等。

调试

您可以在API Explorer中调试该接口。

注意事项

此接口仅修改了产品,未修改和安装插件,如果修改了产品中的service定义,且在平台中有对应的插件,请修改并重新安装插件。

URI

请求方法

PUT

URI

/v5/iot/{project_id}/products/{product_id}

传输协议

HTTPS

请求参数

名称

必选/可选

类型

位置

说明

X-Auth-Token

必选

String

Header

参数说明:用户Token。通过调用IAM服务 获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证

Instance-Id

可选

String

Header

参数说明:实例ID。物理多租下各实例的唯一标识,一般华为云租户无需携带该参数,仅在物理多租场景下从管理面访问API时需要携带该参数。

project_id

必选

String

Path

参数说明:项目ID。获取方法请参见 获取项目ID

product_id

必选

String

Path

参数说明:产品ID,用于唯一标识一个产品,在物联网平台创建产品后由平台分配获得。

取值范围:长度不超过36,只允许字母、数字、下划线(_)、连接符(-)的组合。

app_id

可选

String

Body

参数说明:资源空间ID。此参数为非必选参数,存在多资源空间的用户需要使用该接口时,建议携带该参数,指定要修改的产品属于哪个资源空间;若不携带,则优先修改默认资源空间下产品,如默认资源空间下无对应产品,则按照产品创建时间修改最早创建产品。如果用户存在多资源空间,同时又不想携带该参数,可以联系华为技术支持对用户数据做资源空间合并。

取值范围:长度不超过36,只允许字母、数字、下划线(_)、连接符(-)的组合。

name

可选

String

Body

参数说明:产品名称。

取值范围:长度不超过64,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

device_type

可选

String

Body

参数说明:设备类型。

取值范围:长度不超过32,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

protocol_type

可选

String

Body

参数说明:设备使用的协议类型。注:禁止其他协议类型修改为CoAP。

取值范围:MQTT,CoAP,HTTP,HTTPS,Modbus,ONVIF,OPC-UA,OPC-DA,Other。

data_format

可选

String

Body

参数说明:设备上报数据的格式。

取值范围

  • json:JSON格式
  • binary:二进制码流格式

service_capabilities

可选

List<ServiceCapability>

Body

参数说明:设备的服务能力列表。

manufacturer_name

可选

String

Body

参数说明:厂商名称。

取值范围:长度不超过32,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

industry

可选

String

Body

参数说明:设备所属行业。

取值范围:长度不超过64,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

description

可选

String

Body

参数说明:产品的描述信息。

取值范围:长度不超过128,只允许中文、字母、数字、空白字符、以及_?'#().,;&%@!- ,、:;。/等字符的组合。

表1 ServiceCapability

名称

必选/可选

类型

说明

service_id

必选

String

参数说明:设备的服务ID。注:产品内不允许重复。

取值范围:长度不超过32,只允许中文、字母、数字、以及_?'#().,&%@!-$等字符的组合。

service_type

必选

String

参数说明:设备的服务类型。

取值范围:长度不超过32,只允许中文、字母、数字、以及_?'#().,&%@!-$等字符的组合。

properties

可选

List<ServiceProperty>

参数说明:设备服务支持的属性列表。

取值范围:数组长度大小不超过500。

commands

可选

List<ServiceCommand>

参数说明:设备服务支持的命令列表。

取值范围:数组长度大小不超过500。

events

可选

List<ServiceEvent>

参数说明:设备服务支持的事件列表。

取值范围:数组长度大小不超过500。

description

可选

String

参数说明:设备服务的描述信息。

取值范围:长度不超过128,只允许中文、字母、数字、空白字符、以及_?'#().,;&%@!- ,、:;。/等字符的组合。

option

可选

String

参数说明:指定设备服务是否必选。目前本字段为非功能性字段,仅起到标识作用。

取值范围

  • Master:主服务
  • Mandatory:必选服务
  • Optional:可选服务

默认值为Optional。

表2 ServiceProperty

名称

必选/可选

类型

说明

property_name

必选

String

参数说明:设备属性名称。注:设备服务内不允许重复。属性名称作为设备影子JSON文档中的key不支持特殊字符:点(.)、dollar符号($)、空char(十六进制的ASCII码为00),如果包含了以上特殊字符则无法正常刷新影子文档。

取值范围:长度不超过64,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

data_type

必选

String

参数说明:设备属性的数据类型。

取值范围:int,long,decimal,string,DateTime,jsonObject,enum,boolean,string list。

required

可选

Boolean

参数说明:设备属性是否必选。默认为false。

enum_list

可选

List<String>

参数说明:设备属性的枚举值列表。

min

可选

String

参数说明:设备属性的最小值。

取值范围:长度1-16。

max

可选

String

参数说明:设备属性的最大值。

取值范围:长度1-16。

max_length

可选

Integer

参数说明:设备属性的最大长度。

step

可选

Double

参数说明:设备属性的步长。

unit

可选

String

参数说明:设备属性的单位。

取值范围:长度不超过16。

method

必选

String

参数说明:设备属性的访问模式。

取值范围:RWE,RW,RE,WE,E,W,R。

  • R:属性值可读
  • W:属性值可写
  • E:属性值可订阅,即属性值变化时上报事件

description

可选

String

参数说明:设备属性的描述。

取值范围:长度不超过128,只允许中文、字母、数字、空白字符、以及_?'#().,;&%@!- ,、:;。/等字符的组合。

default_value

可选

Object

参数说明:设备属性的默认值。如果设置了默认值,使用该产品创建设备时,会将该属性的默认值写入到该设备的设备影子预期数据中,待设备上线时将该属性默认值下发给设备。

表3 ServiceCommand

名称

必选/可选

类型

说明

command_name

必选

String

参数说明:设备命令名称。注:设备服务内不允许重复。

取值范围:长度不超过64,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

paras

可选

List<ServiceCommandPara>

参数说明:设备命令的参数列表。

responses

可选

List<ServiceCommandResponse>

参数说明:设备命令的响应列表。

表4 ServiceCommandPara

名称

必选/可选

类型

说明

para_name

必选

String

参数说明:参数的名称。

取值范围:长度不超过32,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

data_type

必选

String

参数说明:参数的数据类型。

取值范围:int,long,decimal,string,DateTime,jsonObject,enum,boolean,string list。

required

可选

Boolean

参数说明:参数是否必选。默认为false。

enum_list

可选

List<String>

参数说明:参数的枚举值列表。

min

可选

String

参数说明:参数的最小值。

取值范围:长度1-16。

max

可选

String

参数说明:参数的最大值。

取值范围:长度1-16。

max_length

可选

Integer

参数说明:参数的最大长度。

step

可选

Double

参数说明:参数的步长。

unit

可选

String

参数说明:参数的单位。

取值范围:长度不超过16。

description

可选

String

参数说明:参数的描述。

取值范围:长度不超过128,只允许中文、字母、数字、空白字符、以及_?'#().,;&%@!- ,、:;。/等字符的组合。

表5 ServiceCommandResponse

名称

必选/可选

类型

说明

response_name

必选

String

参数说明:设备命令响应名称。

取值范围:长度不超过128,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

paras

可选

List<ServiceCommandPara>

参数说明:设备命令响应的参数列表。

表6 ServiceEvent

名称

必选/可选

类型

说明

event_type

必选

String

参数说明:设备事件类型。注:设备服务内不允许重复。

取值范围:长度不超过32,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

paras

可选

List<ServiceCommandPara>

参数说明:设备事件的参数列表。

响应参数

名称

类型

说明

app_id

String

资源空间ID。

app_name

String

资源空间名称。

product_id

String

产品ID,用于唯一标识一个产品,在物联网平台创建产品后由平台分配获得。

name

String

产品名称。

device_type

String

设备类型。

protocol_type

String

设备使用的协议类型。取值范围:MQTT,CoAP,HTTP,HTTPS,Modbus,ONVIF, OPC-UA,OPC-DA,Other。

data_format

String

设备上报数据的格式,取值范围:json,binary。

manufacturer_name

String

厂商名称。

industry

String

设备所属行业。

description

String

产品的描述信息。

service_capabilities

List<ServiceCapability>

设备的服务能力列表。

create_time

String

在物联网平台创建产品的时间,格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。

表7 ServiceCapability

名称

类型

说明

service_id

String

参数说明:设备的服务ID。注:产品内不允许重复。

取值范围:长度不超过32,只允许中文、字母、数字、以及_?'#().,&%@!-$等字符的组合。

service_type

String

参数说明:设备的服务类型。

取值范围:长度不超过32,只允许中文、字母、数字、以及_?'#().,&%@!-$等字符的组合。

properties

List<ServiceProperty>

参数说明:设备服务支持的属性列表。

取值范围:数组长度大小不超过500。

commands

List<ServiceCommand>

参数说明:设备服务支持的命令列表。

取值范围:数组长度大小不超过500。

events

List<ServiceEvent>

参数说明:设备服务支持的事件列表。

取值范围:数组长度大小不超过500。

description

String

参数说明:设备服务的描述信息。

取值范围:长度不超过128,只允许中文、字母、数字、空白字符、以及_?'#().,;&%@!- ,、:;。/等字符的组合。

option

String

参数说明:指定设备服务是否必选。目前本字段为非功能性字段,仅起到标识作用。

取值范围

  • Master:主服务
  • Mandatory:必选服务
  • Optional:可选服务

默认值为Optional。

表8 ServiceProperty

名称

类型

说明

property_name

String

参数说明:设备属性名称。注:设备服务内不允许重复。属性名称作为设备影子JSON文档中的key不支持特殊字符:点(.)、dollar符号($)、空char(十六进制的ASCII码为00),如果包含了以上特殊字符则无法正常刷新影子文档。

取值范围:长度不超过64,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

data_type

String

参数说明:设备属性的数据类型。

取值范围:int,long,decimal,string,DateTime,jsonObject,enum,boolean,string list。

required

Boolean

参数说明:设备属性是否必选。默认为false。

enum_list

List<String>

参数说明:设备属性的枚举值列表。

min

String

参数说明:设备属性的最小值。

取值范围:长度1-16。

max

String

参数说明:设备属性的最大值。

取值范围:长度1-16。

max_length

Integer

参数说明:设备属性的最大长度。

step

Double

参数说明:设备属性的步长。

unit

String

参数说明:设备属性的单位。

取值范围:长度不超过16。

method

String

参数说明:设备属性的访问模式。

取值范围:RWE,RW,RE,WE,E,W,R。

  • R:属性值可读
  • W:属性值可写
  • E:属性值可订阅,即属性值变化时上报事件

description

String

参数说明:设备属性的描述。

取值范围:长度不超过128,只允许中文、字母、数字、空白字符、以及_?'#().,;&%@!- ,、:;。/等字符的组合。

default_value

Object

参数说明:设备属性的默认值。如果设置了默认值,使用该产品创建设备时,会将该属性的默认值写入到该设备的设备影子预期数据中,待设备上线时将该属性默认值下发给设备。

表9 ServiceCommand

名称

类型

说明

command_name

String

参数说明:设备命令名称。注:设备服务内不允许重复。

取值范围:长度不超过64,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

paras

List<ServiceCommandPara>

参数说明:设备命令的参数列表。

responses

List<ServiceCommandResponse>

参数说明:设备命令的响应列表。

表10 ServiceCommandPara

名称

类型

说明

para_name

String

参数说明:参数的名称。

取值范围:长度不超过32,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

data_type

String

参数说明:参数的数据类型。

取值范围:int,long,decimal,string,DateTime,jsonObject,enum,boolean,string list。

required

Boolean

参数说明:参数是否必选。默认为false。

enum_list

List<String>

参数说明:参数的枚举值列表。

min

String

参数说明:参数的最小值。

取值范围:长度1-16。

max

String

参数说明:参数的最大值。

取值范围:长度1-16。

max_length

Integer

参数说明:参数的最大长度。

step

Double

参数说明:参数的步长。

unit

String

参数说明:参数的单位。

取值范围:长度不超过16。

description

String

参数说明:参数的描述。

取值范围:长度不超过128,只允许中文、字母、数字、空白字符、以及_?'#().,;&%@!- ,、:;。/等字符的组合。

表11 ServiceCommandResponse

名称

类型

说明

response_name

String

参数说明:设备命令响应名称。

取值范围:长度不超过128,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

paras

List<ServiceCommandPara>

参数说明:设备命令响应的参数列表。

表12 ServiceEvent

名称

类型

说明

event_type

String

参数说明:设备事件类型。注:设备服务内不允许重复。

取值范围:长度不超过32,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

paras

List<ServiceCommandPara>

参数说明:设备事件的参数列表。

请求示例

PUT https://{Endpoint}/v5/iot/{project_id}/products/{product_id}
Content-Type: application/json
X-Auth-Token: ********
Instance-Id: ********

{
  "app_id" : "jeQDJQZltU8iKgFFoW060F5SGZka",
  "name" : "Thermometer",
  "device_type" : "Thermometer",
  "protocol_type" : "MQTT",
  "data_format" : "json",
  "service_capabilities" : [ {
    "service_type" : "temperature",
    "service_id" : "temperature",
    "description" : "temperature",
    "properties" : [ {
      "unit" : "centigrade",
      "min" : "1",
      "method" : "RW",
      "max" : "100",
      "data_type" : "decimal",
      "description" : "force",
      "step" : 0.1,
      "default_value" : {
        "color" : "red",
        "size" : 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
      } ]
    } ],
    "events" : [ {
      "event_type" : "reboot",
      "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"
  } ],
  "manufacturer_name" : "ABC",
  "industry" : "smartCity",
  "description" : "this is a thermometer produced by Huawei"
}

响应示例

Status Code: 200 OK

Content-Type: application/json

{
  "app_id" : "jeQDJQZltU8iKgFFoW060F5SGZka",
  "app_name" : "testAPP01",
  "product_id" : "5ba24f5ebbe8f56f5a14f605",
  "name" : "Thermometer",
  "device_type" : "Thermometer",
  "protocol_type" : "MQTT",
  "data_format" : "json",
  "manufacturer_name" : "ABC",
  "industry" : "smartCity",
  "description" : "this is a thermometer produced by Huawei",
  "service_capabilities" : [ {
    "service_id" : "temperature",
    "service_type" : "temperature",
    "properties" : [ {
      "property_name" : "temperature",
      "required" : true,
      "data_type" : "decimal",
      "min" : "1",
      "max" : "100",
      "max_length" : 100,
      "step" : 0.1,
      "unit" : "centigrade",
      "method" : "RW",
      "description" : "force",
      "default_value" : {
        "color" : "red",
        "size" : 1
      }
    } ],
    "commands" : [ {
      "command_name" : "reboot",
      "paras" : [ {
        "para_name" : "force",
        "required" : false,
        "data_type" : "string",
        "min" : "1",
        "max" : "100",
        "max_length" : 100,
        "step" : 0.1,
        "unit" : "km/h",
        "description" : "force"
      } ],
      "responses" : [ {
        "response_name" : "ACK",
        "paras" : [ {
          "para_name" : "force",
          "required" : false,
          "data_type" : "string",
          "min" : "1",
          "max" : "100",
          "max_length" : 100,
          "step" : 0.1,
          "unit" : "km/h",
          "description" : "force"
        } ]
      } ]
    } ],
    "events" : [ {
      "event_type" : "reboot",
      "paras" : [ {
        "para_name" : "force",
        "required" : false,
        "data_type" : "string",
        "min" : "1",
        "max" : "100",
        "max_length" : 100,
        "step" : 0.1,
        "unit" : "km/h",
        "description" : "force"
      } ]
    } ],
    "description" : "temperature",
    "option" : "Mandatory"
  } ],
  "create_time" : "20190303T081011Z"
}

错误码

HTTP状态码

错误码

错误码英文描述

错误码中文描述

处理建议

400

IOTDA.013005

The productName has been used in the same application.

该应用下产品名已被使用

请更换产品名重新操作。

IOTDA.014034

Invalid input. The serviceId or eventType do not match.

serviceId或eventType不匹配

请检查请求参数serviceId与eventType是否与profile中定义的相同。

403

IOTDA.000022

Operation not allowed. The user does not have the permission

该用户没有权限

请排查该用户是否有权限访问。

IOTDA.001006

Operation not allowed. Application not found by authorized user or the authorized user has no application.

用户下没有应用或应用与用户不匹配

请排查用户下是否有应用或是否有指定的应用。

IOTDA.001007

Operation not allowed. The application does not belong to the authorized user.

应用与用户信息不匹配

请排查该用户下是否有指定的应用。

IOTDA.013007

Operation not allowed. The product has been used, forbid to delete.

产品已被使用,禁止删除

请删除产品下的资源后再删除该产品。

IOTDA.013013

        

404

IOTDA.013000

The product does not exist.

产品不存在

请排查请求参数是否正确或产品是否已经在平台注册。

分享:

    相关文档

    相关产品

关闭导读