提交 32c5975b 编写于 作者: Y Yangys

Docs Update

Signed-off-by: NYangys <yangyousheng@huawei.com>
上级 5c3087db
# Default ignored files
/shelf/
/workspace.xml
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
# Editor-based HTTP Client requests
/httpRequests/
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="PublishConfigData" remoteFilesAllowedToDisappearOnAutoupload="false">
<serverData>
<paths name="Remote Host (21773fe5-3a8b-4714-ba79-172b30f06462)">
<serverdata>
<mappings>
<mapping local="$PROJECT_DIR$" web="/" />
</mappings>
</serverdata>
</paths>
<paths name="Remote Host (83bee4b2-4ac6-41d9-9e77-7deb46a7cb1c)">
<serverdata>
<mappings>
<mapping local="$PROJECT_DIR$" web="/" />
</mappings>
</serverdata>
</paths>
</serverData>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<module type="CPP_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/docs.iml" filepath="$PROJECT_DIR$/.idea/docs.iml" />
</modules>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>
\ No newline at end of file
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
......@@ -518,7 +518,7 @@ request2(url: string, options? : HttpRequestOptions): Promise\<number\>
**示例:**
```js
let promise = httpRequest.request("EXAMPLE_URL", {
let promise = httpRequest.request2("EXAMPLE_URL", {
method: http.RequestMethod.GET,
connectTimeout: 60000,
readTimeout: 60000,
......@@ -720,8 +720,8 @@ on(type: 'dataEnd', callback: Callback\<void\>): void
**示例:**
```js
httpRequest.on('dataReceive', () => {
console.info('Receive dataEnd');
httpRequest.on('dataEnd', () => {
console.info('Receive dataEnd !');
});
```
......@@ -751,7 +751,7 @@ httpRequest.off('dataEnd');
### on('dataProgress')<sup>10+</sup>
on(type: 'dataProgress', callback: Callback\<{ receiveSize: number, totalSize: number }\>): void
on(type: 'dataProgress', callback: AsyncCallback\<{ receiveSize: number, totalSize: number }\>): void
订阅HTTP流式响应数据接收进度事件。
......@@ -886,7 +886,7 @@ request方法回调函数的返回值类型。
| result | string \| Object \| ArrayBuffer<sup>6+</sup> | 是 | HTTP请求根据响应头中Content-type类型返回对应的响应格式内容:<br />- application/json:返回JSON格式的字符串,如需HTTP响应具体内容,需开发者自行解析<br />- application/octet-stream:ArrayBuffer<br />- 其他:string |
| resultType<sup>9+</sup> | [HttpDataType](#httpdatatype9) | 是 | 返回值类型。 |
| responseCode | [ResponseCode](#responsecode) \| number | 是 | 回调函数执行成功时,此字段为[ResponseCode](#responsecode)。若执行失败,错误码将会从AsyncCallback中的err字段返回。 |
| header | Object | 是 | 发起HTTP请求返回来的响应头。当前返回的是JSON格式字符串,如需具体字段内容,需开发者自行解析。常见字段及解析方式如下:<br/>- Content-Type:header['Content-Type'];<br />- Status-Line:header['Status-Line'];<br />- Date:header.Date/header['Date'];<br />- Server:header.Server/header['Server']; |
| header | Object | 是 | 发起HTTP请求返回来的响应头。当前返回的是JSON格式字符串,如需具体字段内容,需开发者自行解析。常见字段及解析方式如下:<br/>- content-type:header['content-type'];<br />- status-line:header['status-line'];<br />- date:header.date/header['date'];<br />- server:header.server/header['server']; |
| cookies<sup>8+</sup> | string | 是 | 服务器返回的 cookies。 |
## http.createHttpResponseCache<sup>9+</sup>
......@@ -938,11 +938,11 @@ flush(callback: AsyncCallback\<void\>): void
```js
httpResponseCache.flush(err => {
if (err) {
console.info('flush fail');
return;
}
console.info('flush success');
if (err) {
console.info('flush fail');
return;
}
console.info('flush success');
});
```
......@@ -964,9 +964,9 @@ flush(): Promise\<void\>
```js
httpResponseCache.flush().then(() => {
console.info('flush success');
console.info('flush success');
}).catch(err => {
console.info('flush fail');
console.info('flush fail');
});
```
......@@ -988,11 +988,11 @@ delete(callback: AsyncCallback\<void\>): void
```js
httpResponseCache.delete(err => {
if (err) {
console.info('delete fail');
return;
}
console.info('delete success');
if (err) {
console.info('delete fail');
return;
}
console.info('delete success');
});
```
### delete<sup>9+</sup>
......@@ -1013,9 +1013,9 @@ delete(): Promise\<void\>
```js
httpResponseCache.delete().then(() => {
console.info('delete success');
console.info('delete success');
}).catch(err => {
console.info('delete fail');
console.info('delete fail');
});
```
......
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
......@@ -34,10 +34,10 @@ createNetConnection(netSpecifier?: NetSpecifier, timeout?: number): NetConnectio
**示例:**
```js
// 关注默认网络
// 关注默认网络, 不需要传参
let netConnection = connection.createNetConnection()
// 关注蜂窝网络
// 关注蜂窝网络,需要传入相关网络特征,timeout参数未传入说明未使用超时时间,此时timeout为0
let netConnectionCellular = connection.createNetConnection({
netCapabilities: {
bearerTypes: [connection.NetBearType.BEARER_CELLULAR]
......@@ -166,7 +166,7 @@ getGlobalHttpProxy(callback: AsyncCallback\<HttpProxy>): void
**示例:**
```js
connection.getGlobalHttpProxy((error,data) => {
connection.getGlobalHttpProxy((error, data) => {
console.info(JSON.stringify(error));
console.info(JSON.stringify(data));
})
......@@ -199,9 +199,9 @@ getGlobalHttpProxy(): Promise\<HttpProxy>;
```js
connection.getGlobalHttpProxy().then((data) => {
console.info(JSON.stringify(data));
console.info(JSON.stringify(data));
}).catch(error => {
console.info(JSON.stringify(error));
console.info(JSON.stringify(error));
})
```
......@@ -237,16 +237,15 @@ setGlobalHttpProxy(httpProxy: HttpProxy, callback: AsyncCallback\<void>): void
**示例:**
```js
let exclusionStr="192.168,baidu.com"
let exclusionStr = "192.168,baidu.com"
let exclusionArray = exclusionStr.split(',');
let httpProxy = {
host: "192.168.xx.xxx",
port: 8080,
exclusionList: exclusionArray
}
connection.setGlobalHttpProxy(httpProxy, (error, data) => {
console.info(JSON.stringify(error));
console.info(JSON.stringify(data));
connection.setGlobalHttpProxy(httpProxy, (error) => {
console.info(JSON.stringify(error));
});
```
......@@ -287,7 +286,7 @@ setGlobalHttpProxy(httpProxy: HttpProxy): Promise\<void>;
**示例:**
```js
let exclusionStr="192.168,baidu.com"
let exclusionStr = "192.168,baidu.com"
let exclusionArray = exclusionStr.split(',');
let httpProxy = {
host: "192.168.xx.xxx",
......@@ -295,9 +294,9 @@ let httpProxy = {
exclusionList: exclusionArray
}
connection.setGlobalHttpProxy(httpProxy).then(() => {
console.info("success");
}).catch(error=>{
console.info(JSON.stringify(error));
console.info("success");
}).catch(error => {
console.info(JSON.stringify(error));
})
```
......@@ -325,9 +324,9 @@ getAppNet(callback: AsyncCallback\<NetHandle>): void
**示例:**
```js
connection.getAppNet(function(error, data) {
console.log(JSON.stringify(error))
console.log(JSON.stringify(data))
connection.getAppNet(function (error, data) {
console.log(JSON.stringify(error))
console.log(JSON.stringify(data))
})
```
......@@ -356,9 +355,9 @@ getAppNet(): Promise\<NetHandle>;
```js
connection.getAppNet().then((data) => {
console.info(JSON.stringify(data));
console.info(JSON.stringify(data));
}).catch(error => {
console.info(JSON.stringify(error));
console.info(JSON.stringify(error));
})
```
......@@ -393,10 +392,10 @@ setAppNet(netHandle: NetHandle, callback: AsyncCallback\<void>): void
```js
connection.getDefaultNet(function (error, netHandle) {
connection.setAppNet(netHandle, (error, data) => {
console.log(JSON.stringify(error))
console.log(JSON.stringify(data))
});
connection.setAppNet(netHandle, (error, data) => {
console.log(JSON.stringify(error))
console.log(JSON.stringify(data))
});
})
```
......@@ -436,11 +435,11 @@ setAppNet(netHandle: NetHandle): Promise\<void>;
```js
connection.getDefaultNet().then(function (netHandle) {
connection.setAppNet(netHandle).then(() => {
connection.setAppNet(netHandle).then(() => {
console.log("success")
}).catch(error => {
}).catch(error => {
console.log(JSON.stringify(error))
})
})
})
```
......@@ -935,8 +934,7 @@ connection.disableAirplaneMode().then(function (error) {
reportNetConnected(netHandle: NetHandle, callback: AsyncCallback&lt;void&gt;): void
向网络管理报告网络处于可用状态,调用此接口说明应用程序认为网络的可用性(ohos.net.connection.NetCap.NET_CAPABILITY_VAILDATED)与网络管理不一致。
使用callback方式作为异步方法。
向网络管理报告网络处于可用状态,使用callback方式作为异步方法。
**需要权限**:ohos.permission.GET_NETWORK_INFO 和 ohos.permission.INTERNET
......@@ -973,8 +971,7 @@ connection.getDefaultNet().then(function (netHandle) {
reportNetConnected(netHandle: NetHandle): Promise&lt;void&gt;
向网络管理报告网络处于可用状态,调用此接口说明应用程序认为网络的可用性(ohos.net.connection.NetCap.NET_CAPABILITY_VAILDATED)与网络管理不一致。
使用Promise方式作为异步方法。
向网络管理报告网络处于可用状态,使用Promise方式作为异步方法。
**需要权限**:ohos.permission.GET_NETWORK_INFO 和 ohos.permission.INTERNET
......@@ -1524,6 +1521,7 @@ connection.getDefaultNet().then((netHandle) => {
}, error => {
if (error) {
console.log('bind fail');
return;
}
netHandle.bindSocket(tcp, (error, data) => {
if (error) {
......@@ -1543,6 +1541,7 @@ connection.getDefaultNet().then((netHandle) => {
}, error => {
if (error) {
console.log('bind fail');
return;
}
udp.on('message', (data) => {
console.log(JSON.stringify(data))
......@@ -1602,6 +1601,7 @@ connection.getDefaultNet().then((netHandle) => {
}, error => {
if (error) {
console.log('bind fail');
return;
}
netHandle.bindSocket(tcp).then((data) => {
console.log(JSON.stringify(data));
......@@ -1619,6 +1619,7 @@ connection.getDefaultNet().then((netHandle) => {
}, error => {
if (error) {
console.log('bind fail');
return;
}
udp.on('message', (data) => {
console.log(JSON.stringify(data));
......
......@@ -358,7 +358,7 @@ let localServiceInfo = {
}]
}
mdns.resolveLocalService(context, localServiceInfo).then(function (data){
mdns.resolveLocalService(context, localServiceInfo).then(function (data) {
console.log(JSON.stringify(data));
})
```
......
......@@ -194,7 +194,7 @@ startSharing(type: SharingIfaceType, callback: AsyncCallback\<void>): void
```js
import SharingIfaceType from '@ohos.net.sharing'
let SHARING_WIFI=0;
let SHARING_WIFI = 0;
sharing.startSharing(SHARING_WIFI, (error) => {
console.log(JSON.stringify(error));
});
......@@ -243,7 +243,7 @@ startSharing(type: SharingIfaceType): Promise\<void>
```js
import SharingIfaceType from '@ohos.net.sharing'
let SHARING_WIFI=0;
let SHARING_WIFI = 0;
sharing.startSharing(SHARING_WIFI).then(() => {
console.log("start wifi sharing successful");
}).catch(error => {
......@@ -287,7 +287,7 @@ stopSharing(type: SharingIfaceType, callback: AsyncCallback\<void>): void
```js
import SharingIfaceType from '@ohos.net.sharing'
let SHARING_WIFI=0;
let SHARING_WIFI = 0;
sharing.stopSharing(SHARING_WIFI, (error) => {
console.log(JSON.stringify(error));
});
......@@ -334,7 +334,7 @@ stopSharing(type: SharingIfaceType): Promise\<void>
```js
import SharingIfaceType from '@ohos.net.sharing'
let SHARING_WIFI=0;
let SHARING_WIFI = 0;
sharing.stopSharing(SHARING_WIFI).then(() => {
console.log("stop wifi sharing successful");
}).catch(error => {
......@@ -588,7 +588,7 @@ getSharingIfaces(state: SharingIfaceState, callback: AsyncCallback\<Array\<strin
```js
import SharingIfaceState from '@ohos.net.sharing'
let SHARING_BLUETOOTH=2;
let SHARING_BLUETOOTH = 2;
sharing.getSharingIfaces(SHARING_BLUETOOTH, (error, data) => {
console.log(JSON.stringify(error));
console.log(JSON.stringify(data));
......@@ -633,7 +633,7 @@ getSharingIfaces(state: SharingIfaceState): Promise\<Array\<string>>
```js
import SharingIfaceState from '@ohos.net.sharing'
let SHARING_BLUETOOTH=2;
let SHARING_BLUETOOTH = 2;
sharing.getSharingIfaces(SHARING_BLUETOOTH).then(data => {
console.log(JSON.stringify(data));
}).catch(error => {
......@@ -674,7 +674,7 @@ getSharingState(type: SharingIfaceType, callback: AsyncCallback\<SharingIfaceSta
```js
import SharingIfaceType from '@ohos.net.sharing'
let SHARING_WIFI=0;
let SHARING_WIFI = 0;
sharing.getSharingState(SHARING_WIFI, (error, data) => {
console.log(JSON.stringify(error));
console.log(JSON.stringify(data));
......@@ -719,7 +719,7 @@ getSharingState(type: SharingIfaceType): Promise\<SharingIfaceState>
```js
import SharingIfaceType from '@ohos.net.sharing'
let SHARING_WIFI=0;
let SHARING_WIFI = 0;
sharing.getSharingState(SHARING_WIFI).then(data => {
console.log(JSON.stringify(data));
}).catch(error => {
......@@ -760,7 +760,7 @@ getSharableRegexes(type: SharingIfaceType, callback: AsyncCallback\<Array\<strin
```js
import SharingIfaceType from '@ohos.net.sharing'
let SHARING_WIFI=0;
let SHARING_WIFI = 0;
sharing.getSharableRegexes(SHARING_WIFI, (error, data) => {
console.log(JSON.stringify(error));
console.log(JSON.stringify(data));
......@@ -805,7 +805,7 @@ getSharableRegexes(type: SharingIfaceType): Promise\<Array\<string>>
```js
import SharingIfaceType from '@ohos.net.sharing'
let SHARING_WIFI=0;
let SHARING_WIFI = 0;
sharing.getSharableRegexes(SHARING_WIFI).then(data => {
console.log(JSON.stringify(data));
}).catch(error => {
......@@ -842,8 +842,8 @@ on(type: 'sharingStateChange', callback: Callback\<boolean>): void
**示例:**
```js
sharing.on('sharingStateChange', (data) => {
console.log('on sharingStateChange' + JSON.stringify(data));
sharing.on('sharingStateChange', (data) => {
console.log('on sharingStateChange: ' + JSON.stringify(data));
});
```
......@@ -910,8 +910,8 @@ on(type: 'interfaceSharingStateChange', callback: Callback\<{ type: SharingIface
**示例:**
```js
sharing.on('interfaceSharingStateChange', (data) => {
console.log('on interfaceSharingStateChange' + JSON.stringify(data));
sharing.on('interfaceSharingStateChange', (data) => {
console.log('on interfaceSharingStateChange:' + JSON.stringify(data));
});
```
......@@ -978,8 +978,8 @@ on(type: 'sharingUpstreamChange', callback: Callback\<NetHandle>): void
**示例:**
```js
sharing.on('sharingUpstreamChange', (data) => {
console.log('on sharingUpstreamChange' + JSON.stringify(data));
sharing.on('sharingUpstreamChange', (data) => {
console.log('on sharingUpstreamChange:' + JSON.stringify(data));
});
```
......
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
......@@ -2,7 +2,7 @@
本模块提供利用Socket进行数据传输的能力,支持TCPSocket、UDPSocket、WebSocket和TLSSocket。
> **说明:**
> **说明:**
>
> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
......@@ -26,14 +26,12 @@ constructUDPSocketInstance(): UDPSocket
| :--------------------------------- | :---------------------- |
| [UDPSocket](#udpsocket) | 返回一个UDPSocket对象。 |
**示例:**
```js
let udp = socket.constructUDPSocketInstance();
```
## UDPSocket
UDPSocket连接。在调用UDPSocket的方法前,需要先通过[socket.constructUDPSocketInstance](#socketconstructudpsocketinstance)创建UDPSocket对象。
......@@ -67,15 +65,14 @@ bind(address: NetAddress, callback: AsyncCallback\<void\>): void
```js
let udp = socket.constructUDPSocketInstance();
udp.bind({address: '192.168.xx.xxx', port: xxxx, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
})
```
### bind
bind(address: NetAddress): Promise\<void\>
......@@ -110,14 +107,13 @@ bind(address: NetAddress): Promise\<void\>
```js
let udp = socket.constructUDPSocketInstance();
let promise = udp.bind({address: '192.168.xx.xxx', port: 8080, family: 1});
promise .then(() => {
console.log('bind success');
promise.then(() => {
console.log('bind success');
}).catch(err => {
console.log('bind fail');
console.log('bind fail');
});
```
### send
send(options: UDPSendOptions, callback: AsyncCallback\<void\>): void
......@@ -149,22 +145,21 @@ send(options: UDPSendOptions, callback: AsyncCallback\<void\>): void
```js
let udp = socket.constructUDPSocketInstance();
udp.send({
data:'Hello, server!',
address: {
address:'192.168.xx.xxx',
port:xxxx,
family:1
}
}, err=> {
if (err) {
console.log('send fail');
return;
}
console.log('send success');
data: 'Hello, server!',
address: {
address: '192.168.xx.xxx',
port: xxxx,
family: 1
}
}, err => {
if (err) {
console.log('send fail');
return;
}
console.log('send success');
})
```
### send
send(options: UDPSendOptions): Promise\<void\>
......@@ -201,21 +196,20 @@ send(options: UDPSendOptions): Promise\<void\>
```js
let udp = socket.constructUDPSocketInstance();
let promise = udp.send({
data:'Hello, server!',
address: {
address:'192.168.xx.xxx',
port:xxxx,
family:1
}
data: 'Hello, server!',
address: {
address: '192.168.xx.xxx',
port: xxxx,
family: 1
}
});
promise.then(() => {
console.log('send success');
console.log('send success');
}).catch(err => {
console.log('send fail');
console.log('send fail');
});
```
### close
close(callback: AsyncCallback\<void\>): void
......@@ -237,15 +231,14 @@ close(callback: AsyncCallback\<void\>): void
```js
let udp = socket.constructUDPSocketInstance();
udp.close(err => {
if (err) {
console.log('close fail');
return;
}
console.log('close success');
if (err) {
console.log('close fail');
return;
}
console.log('close success');
})
```
### close
close(): Promise\<void\>
......@@ -268,21 +261,20 @@ close(): Promise\<void\>
let udp = socket.constructUDPSocketInstance();
let promise = udp.close();
promise.then(() => {
console.log('close success');
console.log('close success');
}).catch(err => {
console.log('close fail');
console.log('close fail');
});
```
### getState
getState(callback: AsyncCallback\<SocketStateBase\>): void
获取UDPSocket状态。使用callback方式作为异步方法。
>**说明:**
>bind方法调用成功后,才可调用此方法。
> **说明:**
> bind方法调用成功后,才可调用此方法。
**需要权限**:ohos.permission.INTERNET
......@@ -305,30 +297,29 @@ getState(callback: AsyncCallback\<SocketStateBase\>): void
```js
let udp = socket.constructUDPSocketInstance();
udp.bind({address: '192.168.xx.xxx', port: xxxx, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
udp.getState((err, data) => {
if (err) {
console.log('getState fail');
return;
}
console.log('getState success:' + JSON.stringify(data));
})
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
udp.getState((err, data) => {
if (err) {
console.log('getState fail');
return;
}
console.log('getState success:' + JSON.stringify(data));
})
})
```
### getState
getState(): Promise\<SocketStateBase\>
获取UDPSocket状态。使用Promise方式作为异步方法。
>**说明:**
>bind方法调用成功后,才可调用此方法。
> **说明:**
> bind方法调用成功后,才可调用此方法。
**需要权限**:ohos.permission.INTERNET
......@@ -344,30 +335,30 @@ getState(): Promise\<SocketStateBase\>
```js
let udp = socket.constructUDPSocketInstance();
udp.bind({address: '192.168.xx.xxx', port: xxxx, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
let promise = udp.getState();
promise.then(data => {
console.log('getState success:' + JSON.stringify(data));
}).catch(err => {
console.log('getState fail');
});
})
let promise = udp.bind({address: '192.168.xx.xxx', port: xxxx, family: 1});
promise.then(err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
let promise = udp.getState();
promise.then(data => {
console.log('getState success:' + JSON.stringify(data));
}).catch(err => {
console.log('getState fail');
});
});
```
### setExtraOptions
setExtraOptions(options: UDPExtraOptions, callback: AsyncCallback\<void\>): void
设置UDPSocket连接的其他属性。使用callback方式作为异步方法。
>**说明:**
>bind方法调用成功后,才可调用此方法。
> **说明:**
> bind方法调用成功后,才可调用此方法。
**需要权限**:ohos.permission.INTERNET
......@@ -391,37 +382,36 @@ setExtraOptions(options: UDPExtraOptions, callback: AsyncCallback\<void\>): void
```js
let udp = socket.constructUDPSocketInstance();
udp.bind({address:'192.168.xx.xxx', port:xxxx, family:1}, err=> {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
udp.setExtraOptions({
receiveBufferSize:1000,
sendBufferSize:1000,
reuseAddress:false,
socketTimeout:6000,
broadcast:true
}, err=> {
if (err) {
console.log('setExtraOptions fail');
return;
}
console.log('setExtraOptions success');
})
udp.bind({address: '192.168.xx.xxx', port: xxxx, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
udp.setExtraOptions({
receiveBufferSize: 1000,
sendBufferSize: 1000,
reuseAddress: false,
socketTimeout: 6000,
broadcast: true
}, err => {
if (err) {
console.log('setExtraOptions fail');
return;
}
console.log('setExtraOptions success');
})
})
```
### setExtraOptions
setExtraOptions(options: UDPExtraOptions): Promise\<void\>
设置UDPSocket连接的其他属性。使用Promise方式作为异步方法。
>**说明:**
>bind方法调用成功后,才可调用此方法。
> **说明:**
> bind方法调用成功后,才可调用此方法。
**需要权限**:ohos.permission.INTERNET
......@@ -450,27 +440,26 @@ setExtraOptions(options: UDPExtraOptions): Promise\<void\>
```js
let udp = socket.constructUDPSocketInstance();
let promise = udp.bind({address:'192.168.xx.xxx', port:xxxx, family:1});
let promise = udp.bind({address: '192.168.xx.xxx', port: xxxx, family: 1});
promise.then(() => {
console.log('bind success');
let promise1 = udp.setExtraOptions({
receiveBufferSize:1000,
sendBufferSize:1000,
reuseAddress:false,
socketTimeout:6000,
broadcast:true
});
promise1.then(() => {
console.log('setExtraOptions success');
}).catch(err => {
console.log('setExtraOptions fail');
});
console.log('bind success');
let promise1 = udp.setExtraOptions({
receiveBufferSize: 1000,
sendBufferSize: 1000,
reuseAddress: false,
socketTimeout: 6000,
broadcast: true
});
promise1.then(() => {
console.log('setExtraOptions success');
}).catch(err => {
console.log('setExtraOptions fail');
});
}).catch(err => {
console.log('bind fail');
console.log('bind fail');
});
```
### on('message')
on(type: 'message', callback: Callback\<{message: ArrayBuffer, remoteInfo: SocketRemoteInfo}\>): void
......@@ -491,19 +480,18 @@ on(type: 'message', callback: Callback\<{message: ArrayBuffer, remoteInfo: Socke
```js
let udp = socket.constructUDPSocketInstance();
udp.on('message', value => {
console.log("on message, message:" + value.message + ", remoteInfo:" + value.remoteInfo);
console.log("on message, message:" + value.message + ", remoteInfo:" + value.remoteInfo);
});
```
### off('message')
off(type: 'message', callback?: Callback\<{message: ArrayBuffer, remoteInfo: SocketRemoteInfo}\>): void
取消订阅UDPSocket连接的接收消息事件。使用callback方式作为异步方法。
>**说明:**
>可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
> **说明:**
> 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
**系统能力**:SystemCapability.Communication.NetStack
......@@ -518,8 +506,8 @@ off(type: 'message', callback?: Callback\<{message: ArrayBuffer, remoteInfo: Soc
```js
let udp = socket.constructUDPSocketInstance();
let callback = value =>{
console.log("on message, message:" + value.message + ", remoteInfo:" + value.remoteInfo);
let callback = value => {
console.log("on message, message:" + value.message + ", remoteInfo:" + value.remoteInfo);
}
udp.on('message', callback);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
......@@ -527,7 +515,6 @@ udp.off('message', callback);
udp.off('message');
```
### on('listening' | 'close')
on(type: 'listening' | 'close', callback: Callback\<void\>): void
......@@ -548,22 +535,21 @@ on(type: 'listening' | 'close', callback: Callback\<void\>): void
```js
let udp = socket.constructUDPSocketInstance();
udp.on('listening', () => {
console.log("on listening success");
console.log("on listening success");
});
udp.on('close', () => {
console.log("on close success" );
console.log("on close success");
});
```
### off('listening' | 'close')
off(type: 'listening' | 'close', callback?: Callback\<void\>): void
取消订阅UDPSocket连接的数据包消息事件或关闭事件。使用callback方式作为异步方法。
>**说明:**
>可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
> **说明:**
> 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
**系统能力**:SystemCapability.Communication.NetStack
......@@ -578,15 +564,15 @@ off(type: 'listening' | 'close', callback?: Callback\<void\>): void
```js
let udp = socket.constructUDPSocketInstance();
let callback1 = () =>{
console.log("on listening, success");
let callback1 = () => {
console.log("on listening, success");
}
udp.on('listening', callback1);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
udp.off('listening', callback1);
udp.off('listening');
let callback2 = () =>{
console.log("on close, success");
let callback2 = () => {
console.log("on close, success");
}
udp.on('close', callback2);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
......@@ -594,7 +580,6 @@ udp.off('close', callback2);
udp.off('close');
```
### on('error')
on(type: 'error', callback: ErrorCallback): void
......@@ -615,19 +600,18 @@ on(type: 'error', callback: ErrorCallback): void
```js
let udp = socket.constructUDPSocketInstance();
udp.on('error', err => {
console.log("on error, err:" + JSON.stringify(err))
console.log("on error, err:" + JSON.stringify(err))
});
```
### off('error')
off(type: 'error', callback?: ErrorCallback): void
取消订阅UDPSocket连接的error事件。使用callback方式作为异步方法。
>**说明:**
>可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
> **说明:**
> 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
**系统能力**:SystemCapability.Communication.NetStack
......@@ -642,8 +626,8 @@ off(type: 'error', callback?: ErrorCallback): void
```js
let udp = socket.constructUDPSocketInstance();
let callback = err =>{
console.log("on error, err:" + JSON.stringify(err));
let callback = err => {
console.log("on error, err:" + JSON.stringify(err));
}
udp.on('error', callback);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
......@@ -651,7 +635,6 @@ udp.off('error', callback);
udp.off('error');
```
## NetAddress
目标地址信息。
......@@ -730,9 +713,9 @@ constructTCPSocketInstance(): TCPSocket
**返回值:**
| 类型 | 说明 |
| 类型 | 说明 |
| :--------------------------------- | :---------------------- |
| [TCPSocket](#tcpsocket) | 返回一个TCPSocket对象。 |
| [TCPSocket](#tcpsocket) | 返回一个TCPSocket对象。 |
**示例:**
......@@ -740,7 +723,6 @@ constructTCPSocketInstance(): TCPSocket
let tcp = socket.constructTCPSocketInstance();
```
## TCPSocket
TCPSocket连接。在调用TCPSocket的方法前,需要先通过[socket.constructTCPSocketInstance](#socketconstructtcpsocketinstance)创建TCPSocket对象。
......@@ -774,15 +756,14 @@ bind(address: NetAddress, callback: AsyncCallback\<void\>): void
```js
let tcp = socket.constructTCPSocketInstance();
tcp.bind({address: '192.168.xx.xxx', port: xxxx, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
})
```
### bind
bind(address: NetAddress): Promise\<void\>
......@@ -818,21 +799,20 @@ bind(address: NetAddress): Promise\<void\>
let tcp = socket.constructTCPSocketInstance();
let promise = tcp.bind({address: '192.168.xx.xxx', port: xxxx, family: 1});
promise.then(() => {
console.log('bind success');
console.log('bind success');
}).catch(err => {
console.log('bind fail');
console.log('bind fail');
});
```
### connect
connect(options: TCPConnectOptions, callback: AsyncCallback\<void\>): void
连接到指定的IP地址和端口。使用callback方法作为异步方法。
>**说明:**
>bind方法调用成功后,才可调用此方法。
> **说明:**
> bind方法调用成功后,才可调用此方法。
**需要权限**:ohos.permission.INTERNET
......@@ -856,16 +836,15 @@ connect(options: TCPConnectOptions, callback: AsyncCallback\<void\>): void
```js
let tcp = socket.constructTCPSocketInstance();
tcp.connect({ address: {address: '192.168.xx.xxx', port: xxxx, family: 1} , timeout: 6000}, err => {
if (err) {
console.log('connect fail');
return;
}
console.log('connect success');
tcp.connect({address: {address: '192.168.xx.xxx', port: xxxx, family: 1}, timeout: 6000}, err => {
if (err) {
console.log('connect fail');
return;
}
console.log('connect success');
})
```
### connect
connect(options: TCPConnectOptions): Promise\<void\>
......@@ -899,23 +878,22 @@ connect(options: TCPConnectOptions): Promise\<void\>
```js
let tcp = socket.constructTCPSocketInstance();
let promise = tcp.connect({ address: {address: '192.168.xx.xxx', port: xxxx, family: 1} , timeout: 6000});
let promise = tcp.connect({address: {address: '192.168.xx.xxx', port: xxxx, family: 1}, timeout: 6000});
promise.then(() => {
console.log('connect success')
console.log('connect success')
}).catch(err => {
console.log('connect fail');
console.log('connect fail');
});
```
### send
send(options: TCPSendOptions, callback: AsyncCallback\<void\>): void
通过TCPSocket连接发送数据。使用callback方式作为异步方法。
>**说明:**
>connect方法调用成功后,才可调用此方法。
> **说明:**
> connect方法调用成功后,才可调用此方法。
**需要权限**:ohos.permission.INTERNET
......@@ -939,32 +917,29 @@ send(options: TCPSendOptions, callback: AsyncCallback\<void\>): void
```js
let tcp = socket.constructTCPSocketInstance();
let promise = tcp.connect({ address: {address: '192.168.xx.xxx', port: xxxx, family: 1} , timeout: 6000});
promise.then(() => {
console.log('connect success');
tcp.send({
data:'Hello, server!'
},err => {
if (err) {
console.log('send fail');
return;
}
console.log('send success');
})
}).catch(err => {
console.log('connect fail');
});
tcp.connect({address: {address: '192.168.xx.xxx', port: xxxx, family: 1}, timeout: 6000}, () => {
console.log('connect success');
tcp.send({
data: 'Hello, server!'
//此处省略encoding, 默认为utf-8编码格式
}, err => {
if (err) {
console.log('send fail');
return;
}
console.log('send success');
})
})
```
### send
send(options: TCPSendOptions): Promise\<void\>
通过TCPSocket连接发送数据。使用Promise方式作为异步方法。
>**说明:**
>connect方法调用成功后,才可调用此方法。
> **说明:**
> connect方法调用成功后,才可调用此方法。
**需要权限**:ohos.permission.INTERNET
......@@ -993,23 +968,22 @@ send(options: TCPSendOptions): Promise\<void\>
```js
let tcp = socket.constructTCPSocketInstance();
let promise1 = tcp.connect({ address: {address: '192.168.xx.xxx', port: xxxx, family: 1} , timeout: 6000});
let promise1 = tcp.connect({address: {address: '192.168.xx.xxx', port: xxxx, family: 1}, timeout: 6000});
promise1.then(() => {
console.log('connect success');
let promise2 = tcp.send({
data:'Hello, server!'
});
promise2.then(() => {
console.log('send success');
}).catch(err => {
console.log('send fail');
});
console.log('connect success');
let promise2 = tcp.send({
data: 'Hello, server!'
});
promise2.then(() => {
console.log('send success');
}).catch(err => {
console.log('send fail');
});
}).catch(err => {
console.log('connect fail');
console.log('connect fail');
});
```
### close
close(callback: AsyncCallback\<void\>): void
......@@ -1037,15 +1011,14 @@ close(callback: AsyncCallback\<void\>): void
```js
let tcp = socket.constructTCPSocketInstance();
tcp.close(err => {
if (err) {
console.log('close fail');
return;
}
console.log('close success');
if (err) {
console.log('close fail');
return;
}
console.log('close success');
})
```
### close
close(): Promise\<void\>
......@@ -1074,21 +1047,20 @@ close(): Promise\<void\>
let tcp = socket.constructTCPSocketInstance();
let promise = tcp.close();
promise.then(() => {
console.log('close success');
console.log('close success');
}).catch(err => {
console.log('close fail');
console.log('close fail');
});
```
### getRemoteAddress
getRemoteAddress(callback: AsyncCallback\<NetAddress\>): void
获取对端Socket地址。使用callback方式作为异步方法。
>**说明:**
>connect方法调用成功后,才可调用此方法。
> **说明:**
> connect方法调用成功后,才可调用此方法。
**需要权限**:ohos.permission.INTERNET
......@@ -1110,30 +1082,26 @@ getRemoteAddress(callback: AsyncCallback\<NetAddress\>): void
```js
let tcp = socket.constructTCPSocketInstance();
let promise = tcp.connect({ address: {address: '192.168.xx.xxx', port: xxxx, family: 1} , timeout: 6000});
promise.then(() => {
console.log('connect success');
tcp.getRemoteAddress((err, data) => {
if (err) {
console.log('getRemoteAddressfail');
return;
}
console.log('getRemoteAddresssuccess:' + JSON.stringify(data));
})
}).catch(err => {
console.log('connect fail');
tcp.connect({address: {address: '192.168.xx.xxx', port: xxxx, family: 1}, timeout: 6000}, () => {
console.log('connect success');
tcp.getRemoteAddress((err, data) => {
if (err) {
console.log('getRemoteAddressfail');
return;
}
console.log('getRemoteAddresssuccess:' + JSON.stringify(data));
})
});
```
### getRemoteAddress
getRemoteAddress(): Promise\<NetAddress\>
获取对端Socket地址。使用Promise方式作为异步方法。
>**说明:**
>connect方法调用成功后,才可调用此方法。
> **说明:**
> connect方法调用成功后,才可调用此方法。
**需要权限**:ohos.permission.INTERNET
......@@ -1155,29 +1123,28 @@ getRemoteAddress(): Promise\<NetAddress\>
```js
let tcp = socket.constructTCPSocketInstance();
let promise1 = tcp.connect({ address: {address: '192.168.xx.xxx', port: xxxx, family: 1} , timeout: 6000});
let promise1 = tcp.connect({address: {address: '192.168.xx.xxx', port: xxxx, family: 1}, timeout: 6000});
promise1.then(() => {
console.log('connect success');
let promise2 = tcp.getRemoteAddress();
promise2.then(() => {
console.log('getRemoteAddress success');
}).catch(err => {
console.log('getRemoteAddressfail');
});
console.log('connect success');
let promise2 = tcp.getRemoteAddress();
promise2.then(() => {
console.log('getRemoteAddress success');
}).catch(err => {
console.log('getRemoteAddressfail');
});
}).catch(err => {
console.log('connect fail');
console.log('connect fail');
});
```
### getState
getState(callback: AsyncCallback\<SocketStateBase\>): void
获取TCPSocket状态。使用callback方式作为异步方法。
>**说明:**
>bind或connect方法调用成功后,才可调用此方法。
> **说明:**
> bind或connect方法调用成功后,才可调用此方法。
**需要权限**:ohos.permission.INTERNET
......@@ -1199,30 +1166,26 @@ getState(callback: AsyncCallback\<SocketStateBase\>): void
```js
let tcp = socket.constructTCPSocketInstance();
let promise = tcp.connect({ address: {address: '192.168.xx.xxx', port: xxxx, family: 1} , timeout: 6000});
promise.then(() => {
console.log('connect success');
tcp.getState((err, data) => {
if (err) {
console.log('getState fail');
return;
}
console.log('getState success:' + JSON.stringify(data));
});
}).catch(err => {
console.log('connect fail');
let promise = tcp.connect({address: {address: '192.168.xx.xxx', port: xxxx, family: 1}, timeout: 6000}, () => {
console.log('connect success');
tcp.getState((err, data) => {
if (err) {
console.log('getState fail');
return;
}
console.log('getState success:' + JSON.stringify(data));
});
});
```
### getState
getState(): Promise\<SocketStateBase\>
获取TCPSocket状态。使用Promise方式作为异步方法。
>**说明:**
>bind或connect方法调用成功后,才可调用此方法。
> **说明:**
> bind或connect方法调用成功后,才可调用此方法。
**需要权限**:ohos.permission.INTERNET
......@@ -1244,29 +1207,28 @@ getState(): Promise\<SocketStateBase\>
```js
let tcp = socket.constructTCPSocketInstance();
let promise = tcp.connect({ address: {address: '192.168.xx.xxx', port: xxxx, family: 1} , timeout: 6000});
let promise = tcp.connect({address: {address: '192.168.xx.xxx', port: xxxx, family: 1}, timeout: 6000});
promise.then(() => {
console.log('connect success');
let promise1 = tcp.getState();
promise1.then(() => {
console.log('getState success');
}).catch(err => {
console.log('getState fail');
});
console.log('connect success');
let promise1 = tcp.getState();
promise1.then(() => {
console.log('getState success');
}).catch(err => {
console.log('getState fail');
});
}).catch(err => {
console.log('connect fail');
console.log('connect fail');
});
```
### setExtraOptions
setExtraOptions(options: TCPExtraOptions, callback: AsyncCallback\<void\>): void
设置TCPSocket连接的其他属性。使用callback方式作为异步方法。
>**说明:**
>bind或connect方法调用成功后,才可调用此方法。
> **说明:**
> bind或connect方法调用成功后,才可调用此方法。
**需要权限**:ohos.permission.INTERNET
......@@ -1290,39 +1252,35 @@ setExtraOptions(options: TCPExtraOptions, callback: AsyncCallback\<void\>): void
```js
let tcp = socket.constructTCPSocketInstance();
let promise = tcp.connect({ address: {address: '192.168.xx.xxx', port: xxxx, family: 1} , timeout: 6000});
promise.then(() => {
console.log('connect success');
tcp.setExtraOptions({
keepAlive: true,
OOBInline: true,
TCPNoDelay: true,
socketLinger: { on:true, linger:10 },
receiveBufferSize: 1000,
sendBufferSize: 1000,
reuseAddress: true,
socketTimeout: 3000,
},err => {
if (err) {
console.log('setExtraOptions fail');
return;
}
console.log('setExtraOptions success');
});
}).catch(err => {
console.log('connect fail');
let promise = tcp.connect({address: {address: '192.168.xx.xxx', port: xxxx, family: 1}, timeout: 6000}, () => {
console.log('connect success');
tcp.setExtraOptions({
keepAlive: true,
OOBInline: true,
TCPNoDelay: true,
socketLinger: {on: true, linger: 10},
receiveBufferSize: 1000,
sendBufferSize: 1000,
reuseAddress: true,
socketTimeout: 3000,
}, err => {
if (err) {
console.log('setExtraOptions fail');
return;
}
console.log('setExtraOptions success');
});
});
```
### setExtraOptions
setExtraOptions(options: TCPExtraOptions): Promise\<void\>
设置TCPSocket连接的其他属性,使用Promise方式作为异步方法。
>**说明:**
>bind或connect方法调用成功后,才可调用此方法。
> **说明:**
> bind或connect方法调用成功后,才可调用此方法。
**需要权限**:ohos.permission.INTERNET
......@@ -1351,30 +1309,29 @@ setExtraOptions(options: TCPExtraOptions): Promise\<void\>
```js
let tcp = socket.constructTCPSocketInstance();
let promise = tcp.connect({ address: {address: '192.168.xx.xxx', port: xxxx, family: 1} , timeout: 6000});
let promise = tcp.connect({address: {address: '192.168.xx.xxx', port: xxxx, family: 1}, timeout: 6000});
promise.then(() => {
console.log('connect success');
let promise1 = tcp.setExtraOptions({
keepAlive: true,
OOBInline: true,
TCPNoDelay: true,
socketLinger: { on:true, linger:10 },
receiveBufferSize: 1000,
sendBufferSize: 1000,
reuseAddress: true,
socketTimeout: 3000,
});
promise1.then(() => {
console.log('setExtraOptions success');
}).catch(err => {
console.log('setExtraOptions fail');
});
console.log('connect success');
let promise1 = tcp.setExtraOptions({
keepAlive: true,
OOBInline: true,
TCPNoDelay: true,
socketLinger: {on: true, linger: 10},
receiveBufferSize: 1000,
sendBufferSize: 1000,
reuseAddress: true,
socketTimeout: 3000,
});
promise1.then(() => {
console.log('setExtraOptions success');
}).catch(err => {
console.log('setExtraOptions fail');
});
}).catch(err => {
console.log('connect fail');
console.log('connect fail');
});
```
### on('message')
on(type: 'message', callback: Callback<{message: ArrayBuffer, remoteInfo: SocketRemoteInfo}\>): void
......@@ -1395,19 +1352,18 @@ on(type: 'message', callback: Callback<{message: ArrayBuffer, remoteInfo: Socket
```js
let tcp = socket.constructTCPSocketInstance();
tcp.on('message', value => {
console.log("on message, message:" + value.message + ", remoteInfo:" + value.remoteInfo)
console.log("on message, message:" + value.message + ", remoteInfo:" + value.remoteInfo)
});
```
### off('message')
off(type: 'message', callback?: Callback<{message: ArrayBuffer, remoteInfo: SocketRemoteInfo}\>): void
取消订阅TCPSocket连接的接收消息事件。使用callback方式作为异步方法。
>**说明:**
>可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
> **说明:**
> 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
**系统能力**:SystemCapability.Communication.NetStack
......@@ -1422,8 +1378,8 @@ off(type: 'message', callback?: Callback<{message: ArrayBuffer, remoteInfo: Sock
```js
let tcp = socket.constructTCPSocketInstance();
let callback = value =>{
console.log("on message, message:" + value.message + ", remoteInfo:" + value.remoteInfo);
let callback = value => {
console.log("on message, message:" + value.message + ", remoteInfo:" + value.remoteInfo);
}
tcp.on('message', callback);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
......@@ -1431,7 +1387,6 @@ tcp.off('message', callback);
tcp.off('message');
```
### on('connect' | 'close')
on(type: 'connect' | 'close', callback: Callback\<void\>): void
......@@ -1452,22 +1407,21 @@ on(type: 'connect' | 'close', callback: Callback\<void\>): void
```js
let tcp = socket.constructTCPSocketInstance();
tcp.on('connect', () => {
console.log("on connect success")
console.log("on connect success")
});
tcp.on('close', data => {
console.log("on close success")
console.log("on close success")
});
```
### off('connect' | 'close')
off(type: 'connect' | 'close', callback?: Callback\<void\>): void
取消订阅TCPSocket的连接事件或关闭事件。使用callback方式作为异步方法。
>**说明:**
>可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
> **说明:**
> 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
**系统能力**:SystemCapability.Communication.NetStack
......@@ -1482,15 +1436,15 @@ off(type: 'connect' | 'close', callback?: Callback\<void\>): void
```js
let tcp = socket.constructTCPSocketInstance();
let callback1 = () =>{
console.log("on connect success");
let callback1 = () => {
console.log("on connect success");
}
tcp.on('connect', callback1);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
tcp.off('connect', callback1);
tcp.off('connect');
let callback2 = () =>{
console.log("on close success");
let callback2 = () => {
console.log("on close success");
}
tcp.on('close', callback2);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
......@@ -1498,7 +1452,6 @@ tcp.off('close', callback2);
tcp.off('close');
```
### on('error')
on(type: 'error', callback: ErrorCallback): void
......@@ -1519,19 +1472,18 @@ on(type: 'error', callback: ErrorCallback): void
```js
let tcp = socket.constructTCPSocketInstance();
tcp.on('error', err => {
console.log("on error, err:" + JSON.stringify(err))
console.log("on error, err:" + JSON.stringify(err))
});
```
### off('error')
off(type: 'error', callback?: ErrorCallback): void
取消订阅TCPSocket连接的error事件。使用callback方式作为异步方法。
>**说明:**
>可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
> **说明:**
> 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
**系统能力**:SystemCapability.Communication.NetStack
......@@ -1546,8 +1498,8 @@ off(type: 'error', callback?: ErrorCallback): void
```js
let tcp = socket.constructTCPSocketInstance();
let callback = err =>{
console.log("on error, err:" + JSON.stringify(err));
let callback = err => {
console.log("on error, err:" + JSON.stringify(err));
}
tcp.on('error', callback);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
......@@ -1555,7 +1507,6 @@ tcp.off('error', callback);
tcp.off('error');
```
## TCPConnectOptions
TCPSocket连接的参数。
......@@ -1655,11 +1606,11 @@ bind(address: NetAddress, callback: AsyncCallback\<void\>): void
```js
tls.bind({address: '192.168.xx.xxx', port: xxxx, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
});
```
......@@ -1699,9 +1650,9 @@ bind(address: NetAddress): Promise\<void\>
```js
let promise = tls.bind({address: '192.168.xx.xxx', port: xxxx, family: 1});
promise.then(() => {
console.log('bind success');
console.log('bind success');
}).catch(err => {
console.log('bind fail');
console.log('bind fail');
});
```
......@@ -1730,18 +1681,18 @@ getState(callback: AsyncCallback\<SocketStateBase\>): void
```js
let promise = tls.bind({address: '192.168.xx.xxx', port: xxxx, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
});
tls.getState((err, data) => {
if (err) {
console.log('getState fail');
return;
}
console.log('getState success:' + JSON.stringify(data));
if (err) {
console.log('getState fail');
return;
}
console.log('getState success:' + JSON.stringify(data));
});
```
......@@ -1769,18 +1720,17 @@ getState(): Promise\<SocketStateBase\>
**示例:**
```js
tls.bind({address: '192.168.xx.xxx', port: xxxx, family: 1}, err => {
if (err) {
let promiseBind = tls.bind({address: '192.168.xx.xxx', port: xxxx, family: 1});
promiseBind.then(() => {
console.log('bind success');
}).catch((err) => {
console.log('bind fail');
return;
}
console.log('bind success');
});
let promise = tls.getState();
promise.then(() => {
console.log('getState success');
console.log('getState success');
}).catch(err => {
console.log('getState fail');
console.log('getState fail');
});
```
......@@ -1811,29 +1761,30 @@ setExtraOptions(options: TCPExtraOptions, callback: AsyncCallback\<void\>): void
```js
tls.bind({address: '192.168.xx.xxx', port: xxxx, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
});
tls.setExtraOptions({
keepAlive: true,
OOBInline: true,
TCPNoDelay: true,
socketLinger: { on:true, linger:10 },
receiveBufferSize: 1000,
sendBufferSize: 1000,
reuseAddress: true,
socketTimeout: 3000,
},err => {
if (err) {
console.log('setExtraOptions fail');
return;
}
console.log('setExtraOptions success');
keepAlive: true,
OOBInline: true,
TCPNoDelay: true,
socketLinger: {on: true, linger: 10},
receiveBufferSize: 1000,
sendBufferSize: 1000,
reuseAddress: true,
socketTimeout: 3000,
}, err => {
if (err) {
console.log('setExtraOptions fail');
return;
}
console.log('setExtraOptions success');
});
```
### setExtraOptions<sup>9+</sup>
......@@ -1868,26 +1819,26 @@ setExtraOptions(options: TCPExtraOptions): Promise\<void\>
```js
tls.bind({address: '192.168.xx.xxx', port: xxxx, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
});
let promise = tls.setExtraOptions({
keepAlive: true,
OOBInline: true,
TCPNoDelay: true,
socketLinger: { on:true, linger:10 },
receiveBufferSize: 1000,
sendBufferSize: 1000,
reuseAddress: true,
socketTimeout: 3000,
keepAlive: true,
OOBInline: true,
TCPNoDelay: true,
socketLinger: {on: true, linger: 10},
receiveBufferSize: 1000,
sendBufferSize: 1000,
reuseAddress: true,
socketTimeout: 3000,
});
promise.then(() => {
console.log('setExtraOptions success');
console.log('setExtraOptions success');
}).catch(err => {
console.log('setExtraOptions fail');
console.log('setExtraOptions fail');
});
```
......@@ -1931,57 +1882,57 @@ connect(options: TLSConnectOptions, callback: AsyncCallback\<void\>): void
```js
let tlsTwoWay = socket.constructTLSSocketInstance(); // Two way authentication
tlsTwoWay.bind({address: '192.168.xxx.xxx', port: 8080, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
});
let options = {
ALPNProtocols: ["spdy/1", "http/1.1"],
address: {
address: "192.168.xx.xxx",
port: 8080,
family: 1,
},
secureOptions: {
key: "xxxx",
cert: "xxxx",
ca: ["xxxx"],
password: "xxxx",
protocols: [socket.Protocol.TLSv12],
useRemoteCipherPrefer: true,
signatureAlgorithms: "rsa_pss_rsae_sha256:ECDSA+SHA256",
cipherSuite: "AES256-SHA256",
},
ALPNProtocols: ["spdy/1", "http/1.1"],
address: {
address: "192.168.xx.xxx",
port: 8080,
family: 1,
},
secureOptions: {
key: "xxxx",
cert: "xxxx",
ca: ["xxxx"],
password: "xxxx",
protocols: [socket.Protocol.TLSv12],
useRemoteCipherPrefer: true,
signatureAlgorithms: "rsa_pss_rsae_sha256:ECDSA+SHA256",
cipherSuite: "AES256-SHA256",
},
};
tlsTwoWay.connect(options, (err, data) => {
console.error("connect callback error"+err);
console.log(JSON.stringify(data));
console.error("connect callback error" + err);
console.log(JSON.stringify(data));
});
let tlsOneWay = socket.constructTLSSocketInstance(); // One way authentication
tlsOneWay.bind({address: '192.168.xxx.xxx', port: 8080, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
tlsOneWay.bind({address: '192.168.xxx.xxx', port: 8080, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
});
let oneWayOptions = {
address: {
address: "192.168.xxx.xxx",
port: 8080,
family: 1,
},
secureOptions: {
ca: ["xxxx","xxxx"],
cipherSuite: "AES256-SHA256",
},
address: {
address: "192.168.xxx.xxx",
port: 8080,
family: 1,
},
secureOptions: {
ca: ["xxxx", "xxxx"],
cipherSuite: "AES256-SHA256",
},
};
tlsOneWay.connect(oneWayOptions, (err, data) => {
console.error("connect callback error"+err);
console.log(JSON.stringify(data));
console.error("connect callback error" + err);
console.log(JSON.stringify(data));
});
```
......@@ -2030,59 +1981,59 @@ connect(options: TLSConnectOptions): Promise\<void\>
```js
let tlsTwoWay = socket.constructTLSSocketInstance(); // Two way authentication
tlsTwoWay.bind({address: '192.168.xxx.xxx', port: 8080, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
});
let options = {
ALPNProtocols: ["spdy/1", "http/1.1"],
address: {
address: "xxxx",
port: 8080,
family: 1,
},
secureOptions: {
key: "xxxx",
cert: "xxxx",
ca: ["xxxx"],
password: "xxxx",
protocols: [socket.Protocol.TLSv12],
useRemoteCipherPrefer: true,
signatureAlgorithms: "rsa_pss_rsae_sha256:ECDSA+SHA256",
cipherSuite: "AES256-SHA256",
},
ALPNProtocols: ["spdy/1", "http/1.1"],
address: {
address: "xxxx",
port: 8080,
family: 1,
},
secureOptions: {
key: "xxxx",
cert: "xxxx",
ca: ["xxxx"],
password: "xxxx",
protocols: [socket.Protocol.TLSv12],
useRemoteCipherPrefer: true,
signatureAlgorithms: "rsa_pss_rsae_sha256:ECDSA+SHA256",
cipherSuite: "AES256-SHA256",
},
};
tlsTwoWay.connect(options).then(data => {
console.log(JSON.stringify(data));
console.log(JSON.stringify(data));
}).catch(err => {
console.error(err);
console.error(err);
});
let tlsOneWay = socket.constructTLSSocketInstance(); // One way authentication
tlsOneWay.bind({address: '192.168.xxx.xxx', port: 8080, family: 1}, err => {
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
if (err) {
console.log('bind fail');
return;
}
console.log('bind success');
});
let oneWayOptions = {
address: {
address: "192.168.xxx.xxx",
port: 8080,
family: 1,
},
secureOptions: {
ca: ["xxxx","xxxx"],
cipherSuite: "AES256-SHA256",
},
address: {
address: "192.168.xxx.xxx",
port: 8080,
family: 1,
},
secureOptions: {
ca: ["xxxx", "xxxx"],
cipherSuite: "AES256-SHA256",
},
};
tlsOneWay.connect(oneWayOptions).then(data => {
console.log(JSON.stringify(data));
console.log(JSON.stringify(data));
}).catch(err => {
console.error(err);
console.error(err);
});
```
......@@ -2111,11 +2062,11 @@ getRemoteAddress(callback: AsyncCallback\<NetAddress\>): void
```js
tls.getRemoteAddress((err, data) => {
if (err) {
console.log('getRemoteAddress fail');
return;
}
console.log('getRemoteAddress success:' + JSON.stringify(data));
if (err) {
console.log('getRemoteAddress fail');
return;
}
console.log('getRemoteAddress success:' + JSON.stringify(data));
});
```
......@@ -2145,9 +2096,9 @@ getRemoteAddress(): Promise\<NetAddress\>
```js
let promise = tls.getRemoteAddress();
promise.then(() => {
console.log('getRemoteAddress success');
console.log('getRemoteAddress success');
}).catch(err => {
console.log('getRemoteAddress fail');
console.log('getRemoteAddress fail');
});
```
......@@ -2177,11 +2128,11 @@ getCertificate(callback: AsyncCallback\<[X509CertRawData](#x509certrawdata9)\>):
```js
tls.getCertificate((err, data) => {
if (err) {
console.log("getCertificate callback error = " + err);
} else {
console.log("getCertificate callback = " + data);
}
if (err) {
console.log("getCertificate callback error = " + err);
} else {
console.log("getCertificate callback = " + data);
}
});
```
......@@ -2211,9 +2162,9 @@ getCertificate():Promise\<[X509CertRawData](#x509certrawdata9)\>
```js
tls.getCertificate().then(data => {
console.log(data);
console.log(data);
}).catch(err => {
console.error(err);
console.error(err);
});
```
......@@ -2242,11 +2193,11 @@ getRemoteCertificate(callback: AsyncCallback\<[X509CertRawData](#x509certrawdata
```js
tls.getRemoteCertificate((err, data) => {
if (err) {
console.log("getRemoteCertificate callback error = " + err);
} else {
console.log("getRemoteCertificate callback = " + data);
}
if (err) {
console.log("getRemoteCertificate callback error = " + err);
} else {
console.log("getRemoteCertificate callback = " + data);
}
});
```
......@@ -2275,9 +2226,9 @@ getRemoteCertificate():Promise\<[X509CertRawData](#x509certrawdata9)\>
```js
tls.getRemoteCertificate().then(data => {
console.log(data);
console.log(data);
}).catch(err => {
console.error(err);
console.error(err);
});
```
......@@ -2307,11 +2258,11 @@ getProtocol(callback: AsyncCallback\<string\>): void
```js
tls.getProtocol((err, data) => {
if (err) {
console.log("getProtocol callback error = " + err);
} else {
console.log("getProtocol callback = " + data);
}
if (err) {
console.log("getProtocol callback error = " + err);
} else {
console.log("getProtocol callback = " + data);
}
});
```
......@@ -2341,9 +2292,9 @@ getProtocol():Promise\<string\>
```js
tls.getProtocol().then(data => {
console.log(data);
console.log(data);
}).catch(err => {
console.error(err);
console.error(err);
});
```
......@@ -2374,11 +2325,11 @@ getCipherSuite(callback: AsyncCallback\<Array\<string\>\>): void
```js
tls.getCipherSuite((err, data) => {
if (err) {
console.log("getCipherSuite callback error = " + err);
} else {
console.log("getCipherSuite callback = " + data);
}
if (err) {
console.log("getCipherSuite callback error = " + err);
} else {
console.log("getCipherSuite callback = " + data);
}
});
```
......@@ -2409,9 +2360,9 @@ getCipherSuite(): Promise\<Array\<string\>\>
```js
tls.getCipherSuite().then(data => {
console.log('getCipherSuite success:' + JSON.stringify(data));
console.log('getCipherSuite success:' + JSON.stringify(data));
}).catch(err => {
console.error(err);
console.error(err);
});
```
......@@ -2440,11 +2391,11 @@ getSignatureAlgorithms(callback: AsyncCallback\<Array\<string\>\>): void
```js
tls.getSignatureAlgorithms((err, data) => {
if (err) {
console.log("getSignatureAlgorithms callback error = " + err);
} else {
console.log("getSignatureAlgorithms callback = " + data);
}
if (err) {
console.log("getSignatureAlgorithms callback error = " + err);
} else {
console.log("getSignatureAlgorithms callback = " + data);
}
});
```
......@@ -2473,9 +2424,9 @@ getSignatureAlgorithms(): Promise\<Array\<string\>\>
```js
tls.getSignatureAlgorithms().then(data => {
console.log("getSignatureAlgorithms success" + data);
console.log("getSignatureAlgorithms success" + data);
}).catch(err => {
console.error(err);
console.error(err);
});
```
......@@ -2509,11 +2460,11 @@ send(data: string, callback: AsyncCallback\<void\>): void
```js
tls.send("xxxx", (err) => {
if (err) {
console.log("send callback error = " + err);
} else {
console.log("send success");
}
if (err) {
console.log("send callback error = " + err);
} else {
console.log("send success");
}
});
```
......@@ -2551,10 +2502,10 @@ send(data: string): Promise\<void\>
**示例:**
```js
tls.send("xxxx").then(() =>{
console.log("send success");
tls.send("xxxx").then(() => {
console.log("send success");
}).catch(err => {
console.error(err);
console.error(err);
});
```
......@@ -2585,11 +2536,11 @@ close(callback: AsyncCallback\<void\>): void
```js
tls.close((err) => {
if (err) {
console.log("close callback error = " + err);
} else {
console.log("close success");
}
if (err) {
console.log("close callback error = " + err);
} else {
console.log("close success");
}
});
```
......@@ -2619,10 +2570,10 @@ close(): Promise\<void\>
**示例:**
```js
tls.close().then(() =>{
console.log("close success");
tls.close().then(() => {
console.log("close success");
}).catch(err => {
console.error(err);
console.error(err);
});
```
......
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
# @ohos.net.webSocket (WebSocket连接)
> **说明:**
> **说明:**
>
> 本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
使用WebSocket建立服务器与客户端的双向连接,需要先通过[createWebSocket](#websocketcreatewebsocket)方法创建[WebSocket](#websocket)对象,然后通过[connect](#connect)方法连接到服务器。当连接成功后,客户端会收到[open](#onopen)事件的回调,之后客户端就可以通过[send](#send)方法与服务器进行通信。当服务器发信息给客户端时,客户端会收到[message](#onmessage)事件的回调。当客户端不要此连接时,可以通过调用[close](#close)方法主动断开连接,之后客户端会收到[close](#onclose)事件的回调。
使用WebSocket建立服务器与客户端的双向连接,需要先通过[createWebSocket](#websocketcreatewebsocket)方法创建[WebSocket](#websocket)
对象,然后通过[connect](#connect)方法连接到服务器。当连接成功后,客户端会收到[open](#onopen)事件的回调,之后客户端就可以通过[send](#send)
方法与服务器进行通信。当服务器发信息给客户端时,客户端会收到[message](#onmessage)事件的回调。当客户端不要此连接时,可以通过调用[close](#close)
方法主动断开连接,之后客户端会收到[close](#onclose)事件的回调。
若在上述任一过程中发生错误,客户端会收到[error](#onerror)事件的回调。
## 导入模块
```js
......@@ -21,9 +23,13 @@ import webSocket from '@ohos.net.webSocket';
```js
import webSocket from '@ohos.net.webSocket';
var defaultIpAddress = "ws://";
let defaultIpAddress = "ws://";
let ws = webSocket.createWebSocket();
ws.on('open', (err, value) => {
if (err != undefined) {
console.log(JSON.stringify(err))
return
}
console.log("on open, status:" + value['status'] + ", message:" + value['message']);
// 当收到on('open')事件时,可以通过send()方法与服务器进行通信
ws.send("Hello, server!", (err, value) => {
......@@ -82,7 +88,6 @@ createWebSocket(): WebSocket
let ws = webSocket.createWebSocket();
```
## WebSocket
在调用WebSocket的方法前,需要先通过[webSocket.createWebSocket](#websocketcreatewebsocket)创建一个WebSocket。
......@@ -117,15 +122,14 @@ connect(url: string, callback: AsyncCallback\<boolean\>): void
let ws = webSocket.createWebSocket();
let url = "ws://"
ws.connect(url, (err, value) => {
if (!err) {
console.log("connect success");
} else {
console.log("connect fail, err:" + JSON.stringify(err))
}
if (!err) {
console.log("connect success");
} else {
console.log("connect fail, err:" + JSON.stringify(err))
}
});
```
### connect
connect(url: string, options: WebSocketRequestOptions, callback: AsyncCallback\<boolean\>): void
......@@ -157,20 +161,19 @@ connect(url: string, options: WebSocketRequestOptions, callback: AsyncCallback\<
let ws = webSocket.createWebSocket();
let url = "ws://"
ws.connect(url, {
header: {
"key": "value",
"key2": "value2"
}
header: {
"key": "value",
"key2": "value2"
}
}, (err, value) => {
if (!err) {
console.log("connect success");
} else {
console.log("connect fail, err:" + JSON.stringify(err))
}
if (!err) {
console.log("connect success");
} else {
console.log("connect fail, err:" + JSON.stringify(err))
}
});
```
### connect
connect(url: string, options?: WebSocketRequestOptions): Promise\<boolean\>
......@@ -208,13 +211,12 @@ let ws = webSocket.createWebSocket();
let url = "ws://"
let promise = ws.connect(url);
promise.then((value) => {
console.log("connect success")
console.log("connect success")
}).catch((err) => {
console.log("connect fail, error:" + JSON.stringify(err))
console.log("connect fail, error:" + JSON.stringify(err))
});
```
### send
send(data: string | ArrayBuffer, callback: AsyncCallback\<boolean\>): void
......@@ -245,17 +247,16 @@ send(data: string | ArrayBuffer, callback: AsyncCallback\<boolean\>): void
let ws = webSocket.createWebSocket();
let url = "ws://"
ws.connect(url, (err, value) => {
ws.send("Hello, server!", (err, value) => {
if (!err) {
console.log("send success");
} else {
console.log("send fail, err:" + JSON.stringify(err))
}
});
ws.send("Hello, server!", (err, value) => {
if (!err) {
console.log("send success");
} else {
console.log("send fail, err:" + JSON.stringify(err))
}
});
});
```
### send
send(data: string | ArrayBuffer): Promise\<boolean\>
......@@ -291,16 +292,15 @@ send(data: string | ArrayBuffer): Promise\<boolean\>
let ws = webSocket.createWebSocket();
let url = "ws://"
ws.connect(url, (err, value) => {
let promise = ws.send("Hello, server!");
promise.then((value) => {
console.log("send success")
}).catch((err) => {
console.log("send fail, error:" + JSON.stringify(err))
});
let promise = ws.send("Hello, server!");
promise.then((value) => {
console.log("send success")
}).catch((err) => {
console.log("send fail, error:" + JSON.stringify(err))
});
});
```
### close
close(callback: AsyncCallback\<boolean\>): void
......@@ -328,17 +328,15 @@ close(callback: AsyncCallback\<boolean\>): void
```js
let ws = webSocket.createWebSocket();
let url = "ws://"
ws.close((err, value) => {
if (!err) {
console.log("close success")
} else {
console.log("close fail, err is " + JSON.stringify(err))
}
if (!err) {
console.log("close success")
} else {
console.log("close fail, err is " + JSON.stringify(err))
}
});
```
### close
close(options: WebSocketCloseOptions, callback: AsyncCallback\<boolean\>): void
......@@ -367,20 +365,18 @@ close(options: WebSocketCloseOptions, callback: AsyncCallback\<boolean\>): void
```js
let ws = webSocket.createWebSocket();
let url = "ws://"
ws.close({
code: 1000,
reason: "your reason"
code: 1000,
reason: "your reason"
}, (err, value) => {
if (!err) {
console.log("close success")
} else {
console.log("close fail, err is " + JSON.stringify(err))
}
if (!err) {
console.log("close success")
} else {
console.log("close fail, err is " + JSON.stringify(err))
}
});
```
### close
close(options?: WebSocketCloseOptions): Promise\<boolean\>
......@@ -414,19 +410,17 @@ close(options?: WebSocketCloseOptions): Promise\<boolean\>
```js
let ws = webSocket.createWebSocket();
let url = "ws://"
let promise = ws.close({
code: 1000,
reason: "your reason"
code: 1000,
reason: "your reason"
});
promise.then((value) => {
console.log("close success")
console.log("close success")
}).catch((err) => {
console.log("close fail, err is " + JSON.stringify(err))
console.log("close fail, err is " + JSON.stringify(err))
});
```
### on('open')
on(type: 'open', callback: AsyncCallback\<Object\>): void
......@@ -442,25 +436,23 @@ on(type: 'open', callback: AsyncCallback\<Object\>): void
| type | string | 是 | 'open':WebSocket的打开事件。 |
| callback | AsyncCallback\<Object\> | 是 | 回调函数。 |
**示例:**
```js
let ws = webSocket.createWebSocket();
ws.on('open', (err, value) => {
console.log("on open, status:" + value['status'] + ", message:" + value['message']);
console.log("on open, status:" + value['status'] + ", message:" + value['message']);
});
```
### off('open')
off(type: 'open', callback?: AsyncCallback\<Object\>): void
取消订阅WebSocket的打开事件,使用callback方式作为异步方法。
>**说明:**
>可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
> **说明:**
> 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
**系统能力**:SystemCapability.Communication.NetStack
......@@ -476,22 +468,21 @@ off(type: 'open', callback?: AsyncCallback\<Object\>): void
```js
let ws = webSocket.createWebSocket();
let callback1 = (err, value) => {
console.log("on open, status:" + value['status'] + ", message:" + value['message']);
console.log("on open, status:" + value['status'] + ", message:" + value['message']);
}
ws.on('open', callback1);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅
ws.off('open', callback1);
```
### on('message')
on(type: 'message', callback: AsyncCallback\<string | ArrayBuffer\>): void
订阅WebSocket的接收到服务器消息事件,使用callback方式作为异步方法。每个消息最大长度为4K,超过4K自动分片。
>**说明:**
>AsyncCallback中的数据可以是字符串(API 6)或ArrayBuffer(API 8)。
> **说明:**
> AsyncCallback中的数据可以是字符串(API 6)或ArrayBuffer(API 8)。
**系统能力**:SystemCapability.Communication.NetStack
......@@ -507,20 +498,19 @@ on(type: 'message', callback: AsyncCallback\<string | ArrayBuffer\>): void
```js
let ws = webSocket.createWebSocket();
ws.on('message', (err, value) => {
console.log("on message, message:" + value);
console.log("on message, message:" + value);
});
```
### off('message')
off(type: 'message', callback?: AsyncCallback\<string | ArrayBuffer\>): void
取消订阅WebSocket的接收到服务器消息事件,使用callback方式作为异步方法。每个消息最大长度为4K,超过4K自动分片。
>**说明:**
>AsyncCallback中的数据可以是字符串(API 6)或ArrayBuffer(API 8)。
>可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
> **说明:**
> AsyncCallback中的数据可以是字符串(API 6)或ArrayBuffer(API 8)。
> 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
**系统能力**:SystemCapability.Communication.NetStack
......@@ -538,7 +528,6 @@ let ws = webSocket.createWebSocket();
ws.off('message');
```
### on('close')
on(type: 'close', callback: AsyncCallback\<{ code: number, reason: string }\>): void
......@@ -559,19 +548,18 @@ on(type: 'close', callback: AsyncCallback\<{ code: number, reason: string }\>):
```js
let ws = webSocket.createWebSocket();
ws.on('close', (err, value) => {
console.log("on close, code is " + value.code + ", reason is " + value.reason);
console.log("on close, code is " + value.code + ", reason is " + value.reason);
});
```
### off('close')
off(type: 'close', callback?: AsyncCallback\<{ code: number, reason: string }\>): void
取消订阅WebSocket的关闭事件,使用callback方式作为异步方法。
>**说明:**
>可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
> **说明:**
> 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
**系统能力**:SystemCapability.Communication.NetStack
......@@ -589,7 +577,6 @@ let ws = webSocket.createWebSocket();
ws.off('close');
```
### on('error')
on(type: 'error', callback: ErrorCallback): void
......@@ -610,19 +597,18 @@ on(type: 'error', callback: ErrorCallback): void
```js
let ws = webSocket.createWebSocket();
ws.on('error', (err) => {
console.log("on error, error:" + JSON.stringify(err))
console.log("on error, error:" + JSON.stringify(err))
});
```
### off('error')
off(type: 'error', callback?: ErrorCallback): void
取消订阅WebSocket的Error事件,使用callback方式作为异步方法。
>**说明:**
>可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
> **说明:**
> 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
**系统能力**:SystemCapability.Communication.NetStack
......@@ -640,7 +626,6 @@ let ws = webSocket.createWebSocket();
ws.off('error');
```
## WebSocketRequestOptions
建立WebSocket连接时,可选参数的类型和说明。
......@@ -651,7 +636,6 @@ ws.off('error');
| ------ | ------ | ---- | ------------------------------------------------------------ |
| header | Object | 否 | 建立WebSocket连接可选参数,代表建立连接时携带的HTTP头信息。参数内容自定义,也可以不指定。 |
## WebSocketCloseOptions
关闭WebSocket连接时,可选参数的类型和说明。
......
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
文件模式从 100755 更改为 100644
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册