@@ -1201,6 +1201,8 @@ proto - 协议号
12011201
12021202* usocket.IPPROTO_UDP
12031203
1204+ * usocket.IPPROTO_TCP_SER :对应TCP socket 服务端套接字
1205+
12041206其他
12051207
12061208* usocket.SOL_SOCKET - 套接字选项级别,
@@ -1215,6 +1217,8 @@ import usocket
12151217socket = usocket.socket(usocket.AF_INET, usocket.SOCK_STREAM)
12161218# 创建基于UDP的数据报套接字
12171219socket = usocket.socket(usocket.AF_INET, usocket.SOCK_DGRAM)
1220+ # 创建基于TCP的服务端套接字
1221+ socket = usocket.socket(usocket.AF_INET, usocket.SOCK_STREAM, usocket.IPPROTO_TCP_SER)
12181222```
12191223
12201224##### 将主机域名(host)和端口(port)转换为用于创建套接字的5元组序列
@@ -1229,6 +1233,26 @@ socket = usocket.socket(usocket.AF_INET, usocket.SOCK_DGRAM)
12291233
12301234** socket类的方法**
12311235
1236+ ##### 服务端绑定指定地址address
1237+
1238+
1239+ > ** socket.bind(address)**
1240+
1241+ 服务端绑定指定地址address的服务器。
1242+
1243+ * ` address ` :包含地址和端口号的元组或列表
1244+
1245+ 注意:该方法在服务端套接字使用时,绑定address时会将address设为客户端可连接address。其他客户端是否可连接,需确认运营商网络是否支持。
1246+
1247+ 示例:
1248+
1249+ ```
1250+ #绑定拨号IP为服务器地址,端口自定义
1251+ socket.bind(("",80))
1252+ #绑定自定义address
1253+ socket.bind(("192.168.0.1",80))
1254+ ```
1255+
12321256##### 允许服务端接受连接
12331257
12341258
@@ -1242,12 +1266,14 @@ socket = usocket.socket(usocket.AF_INET, usocket.SOCK_DGRAM)
12421266
12431267> ** socket.accept()**
12441268
1245- 接受连接请求,返回元组,包含新的套接字和客户端地址 ,形式为:` (conn, address) `
1269+ 接受连接请求,返回元组,包含新的套接字和客户端地址以及客户端端口 ,形式为:` (conn, address, port ) `
12461270
12471271* ` conn ` :新的套接字对象,可以用来发送和接收数据
12481272
12491273* ` address ` :连接到服务器的客户端地址
12501274
1275+ * ` port ` :连接到服务器的客户端端口
1276+
12511277##### 连接到指定地址address的服务器
12521278
12531279> ** socket.connect(address)**
@@ -1412,6 +1438,7 @@ socket.setsockopt(usocket.SOL_SOCKET, usocket.TCP_KEEPALIVE, 1)
14121438
14131439注意:
14141440
1441+ BG95平台不支持该API。
14151442如果用户调用了 ` socket.close() ` 方法之后,再调用 ` socket.getsocketsta() ` 会返回-1,因为此时创建的对象资源等都已经被释放。
14161443
14171444
0 commit comments