未验证 提交 44e65371 编写于 作者: O openharmony_ci 提交者: Gitee

!17364 MDNS示例代码补充

Merge pull request !17364 from liyufan/0418
......@@ -9,6 +9,7 @@
- [网络共享](net-sharing.md)
- [以太网连接](net-ethernet.md)
- [网络连接管理](net-connection-manager.md)
- [MDNS管理](net-mdns.md)
- IPC与RPC通信
- [IPC与RPC通信概述](ipc-rpc-overview.md)
- [IPC与RPC通信开发指导](ipc-rpc-development-guideline.md)
......
# MDNS管理
## 简介
MDNS即多播DNS(Multicast DNS),提供局域网内的本地服务添加、移除、发现、解析等能力。
- 本地服务:局域网内服务的提供方,比如打印机、扫描器等。
MDNS管理的典型场景有:
- 管理本地服务,通过对本地服务的创建,删除和解析等,管理本地服务。
- 发现本地服务,通过DiscoveryService对象,对指定类型的本地服务状态变化进行监听。
> **说明:**
> 为了保证应用的运行效率,大部分API调用都是异步的,对于异步调用的API均提供了callback和Promise两种方式,以下示例均采用callback函数,更多方式可以查阅[API参考](../reference/apis/js-apis-net-mdns.md)。
以下分别介绍具体开发方式。
## 接口说明
完整的JS API说明以及实例代码请参考:[mDNS链接](../reference/apis/js-apis-net-mdns.md)
| 类型 | 接口 | 功能说明 |
| ---- | ---- | ---- |
| ohos.net.mdns | addLocalService(context: Context, serviceInfo: LocalServiceInfo, callback: AsyncCallback\<LocalServiceInfo>): void | 添加一个mDNS服务,使用callback方式作为异步方法。 |
| ohos.net.mdns | removeLocalService(context: Context, serviceInfo: LocalServiceInfo, callback: AsyncCallback\<LocalServiceInfo>): void | 移除一个mDNS服务,使用callback方式作为异步方法。 |
| ohos.net.mdns | createDiscoveryService(context: Context, serviceType: string): DiscoveryService | 返回一个DiscoveryService对象,该对象用于发现指定服务类型的mDNS服务。 |
| ohos.net.mdns | resolveLocalService(context: Context, serviceInfo: LocalServiceInfo, callback: AsyncCallback\<LocalServiceInfo>): void | 解析一个mDNS服务,使用callback方式作为异步方法。 |
| ohos.net.mdns.DiscoveryService | startSearchingMDNS(): void | 开始搜索局域网内的mDNS服务。 |
| ohos.net.mdns.DiscoveryService | stopSearchingMDNS(): void | 停止搜索局域网内的mDNS服务。 |
| ohos.net.mdns.DiscoveryService | on(type: 'discoveryStart', callback: Callback<{serviceInfo: LocalServiceInfo, errorCode?: MdnsError}>): void | 订阅开启监听mDNS服务的通知。 |
| ohos.net.mdns.DiscoveryService | on(type: 'discoveryStop', callback: Callback<{serviceInfo: LocalServiceInfo, errorCode?: MdnsError}>): void | 订阅停止监听mDNS服务的通知。 |
| ohos.net.mdns.DiscoveryService | on(type: 'serviceFound', callback: Callback\<LocalServiceInfo>): void | 订阅发现mDNS服务的通知。 |
| ohos.net.mdns.DiscoveryService | on(type: 'serviceLost', callback: Callback\<LocalServiceInfo>): void | 订阅移除mDNS服务的通知。 |
## 管理本地服务
1. 设备连接WiFi。
2. 从@ohos.net.mdns里导入mdns的命名空间。
3. 调用addLocalService方法,添加本地服务。
4. 通过resolveLocalService方法,解析本地网络的IP地址(非必要,根据需求使用)。
5. 通过removeLocalService方法,移除本地服务。
```js
// 从@ohos.net.mdns中导入mdns命名空间
import mdns from '@ohos.net.mdns'
// FA模型获取context
import featureAbility from '@ohos.ability.featureAbility';
let context = featureAbility.getContext();
// Stage模型获取context
import UIAbility from '@ohos.app.ability.UIAbility';
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage){
globalThis.context = this.context;
}
}
let context = globalThis.context;
// 建立LocalService对象
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
port: 5555,
host: {
address: "10.14.**.***",
},
serviceAttribute: [{
key: "111",
value: [1]
}]
}
// addLocalService添加本地服务
mdns.addLocalService(context, localServiceInfo, function (error, data) {
console.log(JSON.stringify(error));
console.log(JSON.stringify(data));
});
// resolveLocalService解析本地服务对象(非必要,根据需求使用)
mdns.resolveLocalService(context, localServiceInfo, function (error, data) {
console.log(JSON.stringify(error));
console.log(JSON.stringify(data));
});
// removeLocalService移除本地服务
mdns.removeLocalService(context, localServiceInfo, function (error, data) {
console.log(JSON.stringify(error));
console.log(JSON.stringify(data));
});
```
## 发现本地服务
1. 设备连接WiFi。
2. 从@ohos.net.mdns里导入mdns的命名空间。
3. 创建DiscoveryService对象,用于发现指定服务类型的mDNS服务。
4. 订阅mDNS服务发现相关状态变化。
5. 启动搜索局域网内的mDNS服务。
6. 停止搜索局域网内的mDNS服务。
```js
// 从@ohos.net.mdns中导入mdns命名空间
import mdns from '@ohos.net.mdns'
// FA模型获取context
import featureAbility from '@ohos.ability.featureAbility';
let context = featureAbility.getContext();
// Stage模型获取context
import UIAbility from '@ohos.app.ability.UIAbility';
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage){
globalThis.context = this.context;
}
}
let context = globalThis.context;
// 建立LocalService对象
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
port: 5555,
host: {
address: "10.14.**.***",
},
serviceAttribute: [{
key: "111",
value: [1]
}]
}
// 创建DiscoveryService对象,用于发现指定服务类型的mDNS服务
let serviceType = "_print._tcp";
let discoveryService = mdns.createDiscoveryService(context, serviceType);
// 订阅mDNS服务发现相关状态变化
discoveryService.on('discoveryStart', (data) => {
console.log(JSON.stringify(data));
});
discoveryService.on('discoveryStop', (data) => {
console.log(JSON.stringify(data));
});
discoveryService.on('serviceFound', (data) => {
console.log(JSON.stringify(data));
});
discoveryService.on('serviceLost', (data) => {
console.log(JSON.stringify(data));
});
// 启动搜索局域网内的mDNS服务
discoveryService.startSearchingMDNS();
// 停止搜索局域网内的mDNS服务
discoveryService.stopSearchingMDNS();
```
\ No newline at end of file
......@@ -9,6 +9,7 @@
- [网络共享](net-sharing.md):分享设备已有网络给其他连接设备,支持Wi-Fi热点共享、蓝牙共享和USB共享,同时提供网络共享状态、共享流量查询功能。
- [以太网连接](net-ethernet.md):以太网连接主要提供有线网络能力,提供设置有线网络的IP地址,子网掩码,网关,DNS等信息。
- [网络连接管理](net-connection-manager.md):网络连接管理提供管理网络一些基础能力,包括WiFi/蜂窝/Ethernet等多网络连接优先级管理、网络质量评估、订阅默认/指定网络连接状态变化、查询网络连接信息、DNS解析等功能。
- [MDNS管理](net-mdns.md):MDNS即多播DNS(Multicast DNS),提供局域网内的本地服务添加、移除、发现、解析等能力。
## 约束与限制
......
......@@ -1169,6 +1169,11 @@ connection.getAddressesByName(host).then(function (data) {
网络连接的句柄。
> **说明:**
> 设备从无网络到有网络会触发netAvailable事件、netCapabilitiesChange事件和netConnectionPropertiesChange事件;
> 设备从有网络到无网络状态会触发netLost事件;
> 设备从WiFi到蜂窝会触发netLost事件(WiFi丢失)之后触发 netAvaliable事件(蜂窝可用);
### register
register(callback: AsyncCallback\<void>): void
......
......@@ -23,7 +23,7 @@ addLocalService(context: Context, serviceInfo: LocalServiceInfo, callback: Async
| 参数名 | 类型 | 必填 | 说明 |
|-------------|----------------------------------|-----------|-------------------------------------------------|
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-inner-application-uiAbilityContext.md)。 |
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-app-ability-uiAbility.md)。 |
| serviceInfo | [LocalServiceInfo](#localserviceinfo) | 是 | mDNS服务的信息。 |
| callback | AsyncCallback\<[LocalServiceInfo](#localserviceinfo)> | 是 | 回调函数。成功添加error为undefined,data为添加到本地的mdns服务信息。 |
......@@ -43,7 +43,13 @@ addLocalService(context: Context, serviceInfo: LocalServiceInfo, callback: Async
**示例:**
FA模型示例:
```js
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
let context = featureAbility.getContext();
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
......@@ -58,8 +64,39 @@ let localServiceInfo = {
}
mdns.addLocalService(context, localServiceInfo, function (error, data) {
console.log(JSON.stringify(error))
console.log(JSON.stringify(data))
console.log(JSON.stringify(error));
console.log(JSON.stringify(data));
});
```
Stage模型示例:
```ts
// 获取context
import UIAbility from '@ohos.app.ability.UIAbility';
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage){
globalThis.context = this.context;
}
}
let context = globalThis.context;
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
port: 5555,
host: {
address: "10.14.**.***",
},
serviceAttribute: [{
key: "111",
value: [1]
}]
}
mdns.addLocalService(context, localServiceInfo, function (error, data) {
console.log(JSON.stringify(error));
console.log(JSON.stringify(data));
});
```
......@@ -75,7 +112,7 @@ addLocalService(context: Context, serviceInfo: LocalServiceInfo): Promise\<Local
| 参数名 | 类型 | 必填 | 说明 |
|-------------|----------------------------------|-----------|-------------------------------------------------|
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-inner-application-uiAbilityContext.md)。 |
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-app-ability-uiAbility.md)。 |
| serviceInfo | [LocalServiceInfo](#localserviceinfo) | 是 | mDNS服务的信息。 |
**返回值:**
......@@ -100,7 +137,13 @@ addLocalService(context: Context, serviceInfo: LocalServiceInfo): Promise\<Local
**示例:**
FA模型示例:
```js
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
let context = featureAbility.getContext();
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
......@@ -115,7 +158,37 @@ let localServiceInfo = {
}
mdns.addLocalService(context, localServiceInfo).then(function (data) {
console.log(JSON.stringify(data))
console.log(JSON.stringify(data));
});
```
Stage模型示例:
```ts
// 获取context
import UIAbility from '@ohos.app.ability.UIAbility';
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage){
globalThis.context = this.context;
}
}
let context = globalThis.context;
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
port: 5555,
host: {
address: "10.14.**.***",
},
serviceAttribute: [{
key: "111",
value: [1]
}]
}
mdns.addLocalService(context, localServiceInfo).then(function (data) {
console.log(JSON.stringify(data));
});
```
......@@ -131,7 +204,7 @@ removeLocalService(context: Context, serviceInfo: LocalServiceInfo, callback: As
| 参数名 | 类型 | 必填 | 说明 |
|-------------|----------------------------------|-----------|-------------------------------------------------|
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-inner-application-uiAbilityContext.md)。 |
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-app-ability-uiAbility.md)。 |
| serviceInfo | [LocalServiceInfo](#localserviceinfo) | 是 | mDNS服务的信息。 |
| callback | AsyncCallback\<[LocalServiceInfo](#localserviceinfo)> | 是 | 回调函数。成功移除error为undefined,data为移除本地的mdns服务信息。 |
......@@ -151,7 +224,44 @@ removeLocalService(context: Context, serviceInfo: LocalServiceInfo, callback: As
**示例:**
FA模型示例:
```js
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
let context = featureAbility.getContext();
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
port: 5555,
host: {
address: "10.14.**.***",
},
serviceAttribute: [{
key: "111",
value: [1]
}]
}
mdns.removeLocalService(context, localServiceInfo, function (error, data) {
console.log(JSON.stringify(error));
console.log(JSON.stringify(data));
});
```
Stage模型示例:
```ts
// 获取context
import UIAbility from '@ohos.app.ability.UIAbility';
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage){
globalThis.context = this.context;
}
}
let context = globalThis.context;
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
......@@ -166,8 +276,8 @@ let localServiceInfo = {
}
mdns.removeLocalService(context, localServiceInfo, function (error, data) {
console.log(JSON.stringify(error))
console.log(JSON.stringify(data))
console.log(JSON.stringify(error));
console.log(JSON.stringify(data));
});
```
......@@ -183,7 +293,7 @@ removeLocalService(context: Context, serviceInfo: LocalServiceInfo): Promise\<Lo
| 参数名 | 类型 | 必填 | 说明 |
|-------------|----------------------------------|-----------|-------------------------------------------------|
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-inner-application-uiAbilityContext.md)。 |
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-app-ability-uiAbility.md)。 |
| serviceInfo | [LocalServiceInfo](#localserviceinfo) | 是 | mDNS服务的信息。 |
**返回值:**
......@@ -208,7 +318,13 @@ removeLocalService(context: Context, serviceInfo: LocalServiceInfo): Promise\<Lo
**示例:**
FA模型示例:
```js
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
let context = featureAbility.getContext();
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
......@@ -223,7 +339,37 @@ let localServiceInfo = {
}
mdns.removeLocalService(context, localServiceInfo).then(function (data) {
console.log(JSON.stringify(data))
console.log(JSON.stringify(data));
});
```
Stage模型示例:
```ts
// 获取context
import UIAbility from '@ohos.app.ability.UIAbility';
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage){
globalThis.context = this.context;
}
}
let context = globalThis.context;
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
port: 5555,
host: {
address: "10.14.**.***",
},
serviceAttribute: [{
key: "111",
value: [1]
}]
}
mdns.removeLocalService(context, localServiceInfo).then(function (data) {
console.log(JSON.stringify(data));
});
```
......@@ -239,7 +385,7 @@ createDiscoveryService(context: Context, serviceType: string): DiscoveryService
| 参数名 | 类型 | 必填 | 说明 |
|-------------|---------|-----------| ------------------------------------------------------------ |
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-inner-application-uiAbilityContext.md)。 |
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-app-ability-uiAbility.md)。 |
| serviceType | string | 是 | 需要发现的mDNS服务类型。|
**返回值:**
......@@ -248,11 +394,32 @@ createDiscoveryService(context: Context, serviceType: string): DiscoveryService
| ----------------------------- |---------------------------------|
| DiscoveryService | 基于指定serviceType和Context的发现服务对象。 |
**Example**
**示例**
FA模型示例:
```js
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
let context = featureAbility.getContext();
let serviceType = "_print._tcp";
let discoveryService = mdns.createDiscoveryService(context, serviceType);
```
Stage模型示例:
```ts
// 获取context
import UIAbility from '@ohos.app.ability.UIAbility';
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage){
globalThis.context = this.context;
}
}
let context = globalThis.context;
let serviceType = "_print._tcp";
let discoveryService = mdns.createDiscoveryService(context, serviceType);
```
......@@ -268,7 +435,7 @@ resolveLocalService(context: Context, serviceInfo: LocalServiceInfo, callback: A
| 参数名 | 类型 | 必填 | 说明 |
|-------------|----------------------------------|-----------|-------------------------------------------------------------|
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-inner-application-uiAbilityContext.md)。 |
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-app-ability-uiAbility.md)。 |
| serviceInfo | [LocalServiceInfo](#localserviceinfo) | 是 | mDNS服务的信息。 |
| callback | AsyncCallback\<[LocalServiceInfo](#localserviceinfo)> | 是 | 回调函数。成功移除error为undefined,data为解析的mdns服务信息。 |
......@@ -288,7 +455,44 @@ resolveLocalService(context: Context, serviceInfo: LocalServiceInfo, callback: A
**示例:**
FA模型示例:
```js
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
let context = featureAbility.getContext();
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
port: 5555,
host: {
address: "10.14.**.***",
},
serviceAttribute: [{
key: "111",
value: [1]
}]
}
mdns.resolveLocalService(context, localServiceInfo, function (error, data) {
console.log(JSON.stringify(error));
console.log(JSON.stringify(data));
});
```
Stage模型示例:
```ts
// 获取context
import UIAbility from '@ohos.app.ability.UIAbility';
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage){
globalThis.context = this.context;
}
}
let context = globalThis.context;
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
......@@ -303,8 +507,8 @@ let localServiceInfo = {
}
mdns.resolveLocalService(context, localServiceInfo, function (error, data) {
console.log(JSON.stringify(error))
console.log(JSON.stringify(data))
console.log(JSON.stringify(error));
console.log(JSON.stringify(data));
});
```
......@@ -320,7 +524,7 @@ resolveLocalService(context: Context, serviceInfo: LocalServiceInfo): Promise\<L
| 参数名 | 类型 | 必填 | 说明 |
|-------------|--------------|-----------|-----------------------------------------------------|
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-inner-application-uiAbilityContext.md)。 |
| context | Context | 是 | 应用的上下文。<br>FA模型的应用Context定义见[Context](js-apis-inner-app-context.md)<br>Stage模型的应用Context定义见[Context](js-apis-app-ability-uiAbility.md)。 |
| serviceInfo | [LocalServiceInfo](#localserviceinfo) | 是 | mDNS服务的信息。 |
**返回值:**
......@@ -345,7 +549,13 @@ resolveLocalService(context: Context, serviceInfo: LocalServiceInfo): Promise\<L
**示例:**
FA模型示例:
```js
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
let context = featureAbility.getContext();
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
......@@ -361,9 +571,38 @@ let localServiceInfo = {
mdns.resolveLocalService(context, localServiceInfo).then(function (data) {
console.log(JSON.stringify(data));
})
});
```
Stage模型示例:
```ts
// 获取context
import UIAbility from '@ohos.app.ability.UIAbility';
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage){
globalThis.context = this.context;
}
}
let context = globalThis.context;
let localServiceInfo = {
serviceType: "_print._tcp",
serviceName: "servicename",
port: 5555,
host: {
address: "10.14.**.***",
},
serviceAttribute: [{
key: "111",
value: [1]
}]
}
mdns.resolveLocalService(context, localServiceInfo).then(function (data) {
console.log(JSON.stringify(data));
});
```
## DiscoveryService
指定服务类型的发现服务对象。
......@@ -378,7 +617,29 @@ startSearchingMDNS(): void
**示例:**
FA模型示例:
```js
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
let context = featureAbility.getContext();
let discoveryService = mdns.createDiscoveryService(context, serviceType);
discoveryService.startSearchingMDNS();
```
Stage模型示例:
```ts
// 获取context
import UIAbility from '@ohos.app.ability.UIAbility';
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage){
globalThis.context = this.context;
}
}
let context = globalThis.context;
let discoveryService = mdns.createDiscoveryService(context, serviceType);
discoveryService.startSearchingMDNS();
```
......@@ -393,7 +654,29 @@ stopSearchingMDNS(): void
**示例:**
FA模型示例:
```js
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
let context = featureAbility.getContext();
let discoveryService = mdns.createDiscoveryService(context, serviceType);
discoveryService.stopSearchingMDNS();
```
Stage模型示例:
```ts
// 获取context
import UIAbility from '@ohos.app.ability.UIAbility';
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage){
globalThis.context = this.context;
}
}
let context = globalThis.context;
let discoveryService = mdns.createDiscoveryService(context, serviceType);
discoveryService.stopSearchingMDNS();
```
......@@ -458,7 +741,7 @@ discoveryService.stopSearchingMDNS();
### on('serviceFound')
on(type: 'serviceFound', callback: Callback<[LocalServiceInfo](#localserviceinfo)>): void
on(type: 'serviceFound', callback: Callback\<LocalServiceInfo>): void
订阅发现mDNS服务的通知。
......@@ -487,7 +770,7 @@ discoveryService.stopSearchingMDNS();
### on('serviceLost')
on(type: 'serviceLost', callback: Callback<[LocalServiceInfo](#localserviceinfo)>): void
on(type: 'serviceLost', callback: Callback\<LocalServiceInfo>): void
订阅移除mDNS服务的通知。
......@@ -547,6 +830,6 @@ mDNS错误信息。
| 名称 | 值 | 说明 |
| --------------- | ---- | ----------- |
| INTERNAL_ERROR | 0 | 内部错误导致操作失败。 |
| ALREADY_ACTIVE | 1 | 服务已经存在导致操作失败。 |
| INTERNAL_ERROR | 0 | 内部错误导致操作失败。(暂不支持) |
| ALREADY_ACTIVE | 1 | 服务已经存在导致操作失败。(暂不支持) |
| MAX_LIMIT | 2 | 请求超过最大限制导致操作失败。(暂不支持) |
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册