鸿蒙NEXT开发实战往期必看文章:
一分钟了解”纯血版!鸿蒙HarmonyOS Next应用开发!
“非常详细的” 鸿蒙HarmonyOS Next应用开发学习路线!(从零基础入门到精通)
HarmonyOS NEXT应用开发案例实践总结合(持续更新......)
HarmonyOS NEXT应用开发性能优化实践总结(持续更新......)
1. 鸿蒙HTTP服务器可行性分析
看到这个题目,可能有的小伙伴会有一些疑问:
“鸿蒙API从9到12我都翻烂了,也没见提供HTTP服务器的接口啊”
“我BUG写得少,你可不要骗我”
的确,目前的鸿蒙API没有提供HTTP服务端的实现接口,但是我们知道,HTTP协议是基于TCP的,而鸿蒙API10提供了TCPSocketServer类,包含了如下几个关键接口:
listen(address: NetAddress): Promise<void>
监听方法,绑定IP地址和端口,端口可以指定或由系统随机分配。成功调用该方法后,TCPSocketServer对象监听并接受与此套接字建立的TCPSocket连接。
on(type: 'connect', callback: Callback<TCPSocketConnection>): void
订阅TCPSocketServer的连接事件,在新的客户端套接字连接上以后,会触发callback回调,在回调中包含TCPSocketConnection对象,该对象就表示TCPSocket客户端与服务端的连接。
TCPSocketConnection是服务端和客户端通讯的基础,提供了发送数据到客户端的方法:
send(options: TCPSendOptions): Promise<void>