网络与连接
0 人感兴趣 · 38 次引用
- 最新
- 推荐
鸿蒙网络编程系列 40-TLS 数字证书查看及验签示例
数字证书的验签是网络编程中一个重要的功能,它保证了数字证书的真实性,在此基础上,我们才可以信任该证书,从而信任基于该证书建立的安全通道,所以说,数字证书的验签是通讯安全的基石,了解数字证书验签的原理和方法,有助于我们建立安全的通讯。
鸿蒙网络编程系列 39-Web 组件打印示例
web组件在加载了网页以后,有两种方式可以实现打印,第一种是在网页中调用W3C标准协议接口window.print()进行打印,这种方式比较简单方便,只要网页中触发了该方法即可打印,缺点是如果网页没有地方触发则不能打印;另外一种是在应用侧实现的,通过web控制器
鸿蒙网络编程系列 37- 基于 TCP 套接字的 TLS 通讯客户端示例
在本系列的第7、8篇文章,分别讲解了基于TLS传输单向和双向认证的通讯示例,这两个示例都是TLS客户端直接连接TLS服务端的。众所周知,TLS通讯也是基于TCP协议的,首先在TCP协议上,客户端和服务端连接成功,然后双方经过TLS握手过程,认证数字证书,最后再进
鸿蒙网络编程系列 36- 固定包头可变包体解决 TCP 粘包问题
在本系列的第6篇文章《鸿蒙网络编程系列6-TCP数据粘包表现及原因分析》中,我们演示了TCP数据粘包的表现,如图所示:
鸿蒙网络编程系列 35- 通过数据包结束标志解决 TCP 粘包问题
在本系列的第6篇文章《鸿蒙网络编程系列6-TCP数据粘包表现及原因分析》中,我们演示了TCP数据粘包的表现,如图所示:
鸿蒙网络编程系列 34-Wifi 热点扫描及连接示例
Wifi热点是移动设备接入网络的重要形式,特别是在不具备固定网络接入点的情况下,可以通过Wifi热点灵活方便的接入网络,因此在日常生活中具有广泛的应用。鸿蒙系统也提供了方便的Wifi管理API,支持热点扫描,热点连接等功能,相关的能力归属于系统相关Kit开放
鸿蒙网络编程系列 33-TLS 回声服务器示例
在本系列的第1、2、3、25篇文章,分别讲解了使用UDP以及TCP进行通讯的方式,并且以回声服务器的形式分别演示了客户端与服务端之间的通讯。这种通讯方式一般来说没什么问题,但是在需要对内容保密的情况下就不可取了,毕竟它们都是通过明文进行通讯的,如果数
鸿蒙网络编程系列 32- 基于拦截器的性能监控示例
在Web开发中拦截器是一种非常有用的模式,它允许开发者在请求发送到服务器之前或响应返回给客户端之前执行一些预处理或后处理操作。这种机制特别适用于需要对所有网络请求或响应进行统一处理的情况,比如添加全局错误处理、请求头的修改、响应数据的格式化等
鸿蒙网络编程系列 31- 使用 RCP 调用 OpenAI 接口实现智能助手
在OpenAI推出GPT系列大模型以后,市场上各种类似的大模型也层出不穷,这些大模型也基本都会兼容OpenAI的接口,在开发基于大模型的应用时,选择使用OpenAI接口作为和后端大模型通讯的标准,可以更好的适配不同厂家的模型。本节将开发一个简单的智能助手,可以
鸿蒙网络编程系列 30- 断点续传下载文件示例
在文件的下载中,特别是大文件的下载中,可能会出现各种原因导致的下载暂停情况,如果不做特殊处理,下次还需要从头开始下载,既浪费了时间,又浪费了流量。不过,HTTP协议通过Range首部提供了对文件分块下载的支持,也就是说可以指定服务器返回文件特定范围
鸿蒙网络编程系列 29-RCP 下载到文件和流示例
RCP模块是Harmony NEXT全新开发的HTTP数据请求能力接口,它为上传下载能力专门封装了几个方法,针对下载能力,主要是下载到文件的downloadToFile方法:
鸿蒙网络编程系列 28- 服务端证书锁定防范中间人攻击示例
TLS安全通讯的基础是基于对操作系统或者浏览器根证书的信任,如果CA证书签发机构被入侵,或者设备内置证书被篡改,都会导致TLS握手环节面临中间人攻击的风险。其实,这种风险被善意利用的情况还是很常见的,比如著名的HTTPS调试工具Fiddler,就是利用了这一点
鸿蒙网络编程系列 26-HTTPS 证书自选 CA 校验示例
在前述关于HttpRequest的文章中,比如鸿蒙网络编程系列9-使用HttpRequest模拟登录示例,请求的是HTTP协议的网址,如果是服务端是使用HTTPS的,就可能有问题,主要是服务端数字证书的有效性,如果是自签名的数字证书,在默认情况下,会使用系统CA进行校验,这
鸿蒙网络编程系列 25-TCP 回声服务器的实现
在前文鸿蒙网络编程系列2-UDP回声服务器的实现中,介绍了什么是回声服务器,并且基于UDP协议实现了一个简单的回声服务器,本节将基于TCP协议实现一个类似的回声服务器。在鸿蒙API10以后,提供了TCPSocketServer类,该类封装了TCP服务端的相关接口,包括用来监
鸿蒙网络编程系列 24-Web 组件与应用互操作示例
在通常的APP开发中,经常会采用内嵌网页的形式,通过网页来展现丰富的动态内容,虽少了很多原生开发的功能,但是这么做无可厚非,毕竟APP需要适配的系统平台很多,比如安卓、苹果、各种PC端,现在还有如日中天的鸿蒙系统;为每一种平台做定制难度还是很大的,
鸿蒙网络编程系列 23- 实现一个基于鸿蒙 API 的 HTTP 服务器
看到这个题目,可能有的小伙伴会有一些疑问:
鸿蒙网络编程系列 22-Web 组件文件上传示例
鸿蒙的web组件可以加载网页,如果网页本身具备文件上传功能的话就比较尴尬了,因为html上传文件时,允许用户选择本地文件,但是鸿蒙因为安全性的考虑,只允许操作沙箱中的文件,所以在web组件中的上传功能本身无法直接使用。如果一定要使用的话,就要另辟蹊径
鸿蒙网络编程系列 21- 使用 HttpRequest 上传任意文件到服务端示例
在前述文章鸿蒙网络编程系列11-使用HttpRequest上传文件到服务端示例中,为简化起见,只描述了如何上传文本类型的文件到服务端,对文件的大小也有一定的限制,只能作为鸿蒙API演示使用,在实际开发中上传的文件类型多样,大小不一,本文将介绍一种适应性更广
鸿蒙网络编程系列 20- 解决 web 组件加载网页白屏示例
鸿蒙系统提供了web组件,可以在APP里内嵌该组件显示网页信息,但是,很多开发者反应一种比较奇特的情况,就是在加载的网页里,如果含有字符#的话,就会出现白屏,或者是#后的内容无法显示。当然,web组件加载网页的方式比较多,在上文鸿蒙网络编程系列18-Web
鸿蒙网络编程系列 19- 获取网络连接信息并选择一种绑定到应用示例
移动设备一般都具备移动网络和无线WIFI的连接能力,有些还可以接入有线以太网,这些网络可以根据需要随时切换。鸿蒙APP可以自动适应上述的网络,一般来说,会优先使用WIFI或者有线以太网,移动网络因为要收费,不会首选使用。但是在某些特殊情形下,可能要求
鸿蒙网络编程系列 18-Web 组件加载网页的四种方式示例
在应用界面里嵌入网页是很多快速APP开发使用的方式之一,通过这种方式可以比较好的达到多端兼容的效果,鸿蒙也一样提供了类似的能力,就是基础组件中的Web组件。当然,单纯的靠Web组件也无法实现复杂的功能,还需要对应的控制器WebviewController,两者配合可
鸿蒙网络编程系列 17- 网络状态监测示例
移动设备一般都具备移动网络和无线WIFI的连接能力,有些还可以接入有线以太网,这些网络可以根据需要随时切换,在网络切换过程中,伴随着网络状态的变化,比如网卡名称、IP地址、上传下载能力等等,鸿蒙提供了网络状态变化的监测api,可以随时根据需要捕获状
鸿蒙网络编程系列 16- 获取 Wifi 信息示例
对于移动设备来说,一般都提供了无线网卡,可以在需要时连接无线网络,这时候就可以获取相关的无线网络信息,比如热点名称、连接频段、链接速度、IP地址、MAC地址等,鸿蒙系统提供了丰富的无线网络管理API,可以轻松获取相关WIFI信息。
鸿蒙网络编程系列 15- 域名解析示例
计算机网络中包括多个节点,要进行报文传输就要能够唯一确定每一个节点,解决这个问题的方式是给每个节点分配一个唯一的地址,这个地址被称为节点的网络地址,在网络层的IP协议下,这个地址又被称为IP地址。但是,IP地址不方便记忆,并且不能显示地址组织的名
鸿蒙网络编程系列 14-WebSocket 客户端通讯示例
WebSocket协议最初于2011年通过RFC 6455完成了标准定义,后来又通过RFC 7936、RFC 8307、RFC 8441等标准对协议进行了完善。WebSocket位于网络分层模型的应用层,是建立在TCP之上的双向通讯协议,可以在一个TCP连接上进行全双工通信;和HTTP不同的是,WebSock
鸿蒙网络编程系列 13- 使用 Request 部件上传文件到服务端示例
在前述文章鸿蒙网络编程系列11-使用HttpRequest上传文件到服务端示例中,使用基础的HttpRequest模块演示了如何上传文件到服务器,在鸿蒙网络编程系列12-使用Request部件下载文件到本地示例中,介绍了request部件,该部件提供了上传下载的方法,并且演示了如何
鸿蒙网络编程系列 12- 使用 Request 部件下载文件到本地示例
在前述文章鸿蒙网络编程系列10-使用HttpRequest下载文件到本地示例中,使用基础的HttpRequest模块演示了如何下载文件到本地,整个下载过程看起来好像不太复杂,但是,如果考虑到可靠性、网络问题以及文件类型和大小的差异,开发难度还是相当大的,幸运的是,
鸿蒙网络编程系列 11- 使用 HttpRequest 上传文件到服务端示例
在上一篇文章鸿蒙网络编程系列10-使用HttpRequest下载文件到本地示例中,我们使用HttpRequest下载了文件,同样,使用HttpRequest也可以上传文件,假设我们有一个网站,其文件上传地址为http://192.168.100.101:8081/upload ,为简单起见,该网站不需要登录既
鸿蒙网络编程系列 10- 使用 HttpRequest 下载文件到本地示例
在上一篇文章鸿蒙网络编程系列9-使用HttpRequest模拟登录示例中,我们使用HttpRequest模拟了登录,同样,使用HttpRequest也可以下载文件,假设还是上文中提到的网站,在登录后会进入首页,在首页会显示下载列表,单击某一个文件就可以下载了,如图所示:
鸿蒙网络编程系列 9- 使用 HttpRequest 模拟登录示例
HTTP(Hypertext Transfer Protocol)协议是现代互联网的基石协议之一,有着最广泛的应用,于1991年由英国计算机科学家蒂姆·伯纳斯·李(Tim Berners-Lee)正式提出,当时被称为HTTP协议0.9版本;1996年通过RFC 1945发布了1.0版本,当然,这些都不是正式的Int