tcp 服务端

#!/usr/bin/env python
# -*- coding:utf-8 -*-
"""
TCP server端
1. 建立一个socket
2. 绑定IP和端口, tuple 端口的范围1-65535, 通常大于1024
3. 监听 listen
4. 接受请求 accept
5. 接收client传输的数据
6. 反馈数据,可以不反馈
7. close 关闭
"""
import socket
# ip地址五类 ABCDE
# 192.168.xx.xxx 1-255
# socker类型
# socket.SOCK_STREAM 流套接字 tcp
# socket.SOCK_DCRAM 数据套接字 udp


def tcp_server():
    # 1.建立socket
    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 参数可以不写,默认
    # 2.绑定 ip是字符串, 端口是数字:1-65535, 避免去使用 1-1024, 尽量要大于1024
    sock.bind(('127.0.0.1', 8080))  # 绑定IP, 通过ip地址找到
    # 3.监听
    sock.listen()  # 监听
    while True:
        # skt 和一个客户端已经连接上了
        skt, addr = sock.accept()  # 接收阻塞的请求

    # skt.recvfrom()  # udp才使用
        # 存储数据
        msg = skt.recv(1024)  # 1024是个缓冲区
        msg = msg.decode()
        print(msg)

        res = '我是你的tcp服务器'
        skt.send(res.encode())

        # 关闭连接
        skt.close()


if __name__ == '__main__':
    print('Start tcp sever....')
    tcp_server()
    print('end tcp sever....')

猜你喜欢

转载自blog.csdn.net/qq_42336560/article/details/81474423