目录
第 1章 TCP通信(
38min)·1
1.1 TCP简介 1
1.1.1 报文格式 1
1.1.2 三次握手 3
1.1.3 滑动窗口机制 · 4
1.2 TCP API7
1.2.1 NetAddress · 7
1.2.2 TCPConnectOptions · 7
1.2.3 TCPSendOptions· 8
1.2.4 SocketRemoteInfo· 8
1.2.5 SocketMessageInfo · 8
1.2.6 SocketStateBase 8
1.2.7 TCPSocket 9
1.2.8 TCPSocketServer 10
1.2.9 TCPSocketConnection 11
1.3 TCP通信示例 12
1.3.1 TCP客户端 12
1.3.2 TCP客户端连接超时· 17
1.3.3 邮件发送客户端 · 23
1.3.4 长时任务处理模块 · 33
1.3.5 TCP回声服务器 35
第 2章通信粘包 (
26min) 40
2.1粘包的表现 40
2.2 TCP粘包原因分析 44
2.3 TCP粘包问题解决方案 · 46
2.3.1 指定数据包结束标志 · 46
2.3.2 固定包头 +可变包体结构· 52
第 3章 UDP通信(
16min)· 59
3.1 UDP简介 · 59
3.2 UDP API · 60
3.2.1 UDPSendOptions 60
3.2.2 UDPSocket 60
3.3 UDP通信示例 · 61
3.3.1 UDP客户端 · 61
3.3.2 UDP回声服务器 66
第 4章安全通信 (
36min) 71
4.1安全通信的演化 71
4.1.1 明文通信 71
4.1.2 对称加密通信 · 72
4.1.3 非对称加密通信 · 73
4.1.4 基于数字证书的非对称加密通信 · 75
4.2 TLS协议简介 76
4.3 TLS安全通信 API · 77
4.3.1 Protocol· 77
4.3.2 TLSSecureOptions 77
4.3.3 TLSConnectOptions 78
4.3.4 TLSSocket 78
4.3.5 TLSSocketServer 80
4.3.6 TLSSocketConnection 81
4.4签发自签名数字证书 · 82
4.4.1 签发简介 82
4.4.2 签发步骤 82
4.5数字证书相关 API · 89
4.5.1 EncodingFormat 89
4.5.2 EncodingBlob · 90
4.5.3 CertItemType 90
4.5.4 X500DistinguishedName 90
4.5.5 X509Cert· 90
4.6安全通信示例 92
4.6.1 文件处理模块 · 92
4.6.2 数字证书验签 · 96
目录 VII
4.6.3 TLS回声服务器· 103
4.6.4 TLS客户端 109
第 5章 HTTP数据请求(
43min) 118
5.1 HTTP简介 · 118
5.1.1 HTTP抽象消息结构 118
5.1.2 HTTP/1.1的消息结构 119
5.1.3 请求方法 121
5.1.4 状态码 122
5.1.5 首部字段 125
5.2最简单的 HTTP服务器· 127
5.3 HTTP数据请求 API 133
5.3.1 RequestMethod · 133
5.3.2 ResponseCode· 133
5.3.3 HttpProtocol 134
5.3.4 HttpDataType 135
5.3.5 MultiFormData · 135
5.3.6 CertType · 135
5.3.7 ClientCert 136
5.3.8 HttpRequestOptions 136
5.3.9 HttpResponse 138
5.3.10 http.createHttp· 139
5.3.11 HttpRequest· 139
5.4 HTTP数据请求示例 141
5.4.1 模拟登录 141
5.4.2 登录后下载文件并预览 · 146
5.4.3 上传文件 154
5.4.4 服务器端证书 CA校验方式 159
5.4.5 服务器端证书锁定防范中间人攻击 164
5.4.6 流式响应下载文件并预览 · 173
第 6章上传下载部件 (
20min) 180
6.1分块下载的协议支持 · 181
6.1.1 分块下载的需求 · 181
6.1.2 HTTP支持 · 182
6.2分类任务 API· 183
6.2.1 RequestData 183
6.2.2 File 183
6.2.3 UploadConfig 183
6.2.4 TaskState· 184
6.2.5 request.uploadFile · 184
6.2.6 UploadTask · 184
6.2.7 DownloadConfig· 185
6.2.8 request.downloadFile 186
6.2.9 DownloadTask 186
6.2.10 DownloadInfo · 187
6.3分类任务示例 188
6.3.1 上传文件 188
6.3.2 下载文件 192
6.4统一任务 API· 198
6.4.1 Action · 198
6.4.2 Network 198
6.4.3 Mode· 198
6.4.4 FileSpec 199
6.4.5 FormItem 199
6.4.6 Config · 199
6.4.7 State 201
6.4.8 Progress 202
6.4.9 Task· 202
6.4.10统一任务处理函数 · 204
6.5统一任务示例 205
6.5.1 多文件上传 205
6.5.2 单文件多任务分块下载 · 210
第 7章 RCP模块(
15min)· 219
7.1 RCP模块简介 219
7.2 RCP模块 API 219
7.2.1 Request · 219
7.2.2 Interceptor· 220
7.2.3 RequestContext · 220
目录 IX
7.2.4 SecurityConfiguration · 221
7.2.5 TransferConfiguration · 221
7.2.6 Configuration 222
7.2.7 SessionConfiguration 222
7.2.8 rcp.createSession· 223
7.2.9 Session 223
7.3 RCP模块示例 225
7.3.1 使用 RCP调用 OpenAI接口实现智能助手 · 225
7.3.2 基于拦截器的性能监控 · 232
7.3.3 下载文件并预览示例 · 238
7.3.4 服务器端证书的 4种校验方式 · 243
7.3.5 断点续传下载文件 · 250
第 8章 ArkWeb (
18min) 258
8.1 ArkWeb简介 258
8.1.1 App内嵌网页简介· 258
8.1.2 ArkWeb简介 258
8.2 ArkWeb API 259
8.2.1 WebOptions· 259
8.2.2 Web· 260
8.2.3 WebDownloadItem 261
8.2.4 WebDownloadDelegate· 262
8.2.5 WebviewController · 262
8.3 ArkWeb API示例· 263
8.3.1 加载网页的 4种方式 · 263
8.3.2 文件上传 270
8.3.3 文件下载 275
8.3.4 Web组件与应用互操作· 280
8.3.5 Web组件打印 287
第 9章 WebSocket (
10min) 292
9.1 WebSocket简介 · 292
9.2 WebSocket API · 292
9.2.1 webSocket.createWebSocket· 293
9.2.2 WebSocketRequestOptions · 293
9.2.3 WebSocketCloseOptions · 294
9.2.4 WebSocket 294
9.3 WebSocket示例 · 296
第 10章 WLAN网络 (
8min) · 301
10.1 WLAN网络简介 301
10.2 WLAN API · 301
10.2.1 WifiSecurityType 301
10.2.2 WifiStandard · 302
10.2.3 WifiScanInfo · 303
10.2.4 WifiLinkedInfo 304
10.2.5 IpInfo 306
10.2.6 Ipv6Info 306
10.2.7 WifiDeviceConfig · 307
10.2.8 wifiManager的函数 · 307
10.2.9 wifiManager的事件 · 309
10.3 WLAN示例 · 311
10.3.1 WiFi信息获取 311
10.3.2 WiFi热点扫描及连接 315
