socket 网络连接基础

Posted python我的最爱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了socket 网络连接基础相关的知识,希望对你有一定的参考价值。

socket 客户端

import socket

1.client = socket.socket()  # socket.TCP/IP 选择连接的类型,默认为本地连接

2.client.connect((‘localhost‘, 6000))  # connect(a.ip, a.port) a.ip = ‘localhost, a.port = 6000  服务器连接

3.socket.send(‘吃饭‘.encode(‘utf-8‘))  # 发送数据 发送的数据需要转换为字节格式

4.data = socket.recv(1024)  #接受数据 1024表示接受字节的大小 

5. data = data.decode() 把字节格式转换为utf-8格式

6.client.close()  关闭客户端 

socket 服务器端 

import socket

1.server = socket.socket()  # socket.TCP/IP 选择连接的类型,默认为本地连接

2.server.bind((‘localhost‘, 6000))  # connect(a.ip, a.port) a.ip = ‘localhost, a.port = 6000  服务器连接

3.server.listen()  #服务器接听

4.conn, addr = socket.accept() #服务器接受应答

5.data = conn.recv(1024)        #服务器接受信息

6.conn.send(data)                  #将接受的信息返回给客户端

7.server.close()                         #关闭服务器端 

 

 

服务器端代码

 1 import socket 
 2 
 3 server = socket.socket()
 4 server.bind((localhost, 6000))
 5 
 6 server.listen()
 7 while True:
 8     conn, addr = server.accept()     #其他分机继续接收
 9     while True:
10         data = conn.recv(1024)
11         conn.send(data)
12         if len(data) == 0:         #如果接收到的信号为空,挂断
13             break
14         
15 server.close()

 

客户端代码

 1 import socket
 2 
 3 client = socket.socket()
 4 client.connect((localhost, 6000))
 5 
 6 while True:
 7   msg = input(please give me you want to send)
 8   if len(msg) == 0:
 9       continue
10   client.send(msg.encode(utf-8))
11   data = client.recv(1024)
12   print(recv, data.decode())
13 
14 client.close()

 

以上是关于socket 网络连接基础的主要内容,如果未能解决你的问题,请参考以下文章

Linux网络编程基础API

Linux网络编程基础API

Socket网络通讯基础

python基础——socket

网络编程基础-socket

Java基础知识—网络Socket