zoukankan      html  css  js  c++  java
  • 一起学Python:tcp服务器

    tcp服务器

    生活中的电话机

    如果想让别人能更够打通咱们的电话获取相应服务的话,需要做以下几件事情:

    1. 买个手机

    2. 插上手机卡

    3. 设计手机为正常接听状态(即能够响铃)

    4. 静静的等着别人拨打

    tcp服务器

    如同上面的电话机过程一样,在程序中,如果想要完成一个tcp服务器的功能,需要的流程如下:

    1. socket创建一个套接字

    2. bind绑定ip和port

    3. listen使套接字变为可以被动链接

    4. accept等待客户端的链接

    5. recv/send接收发送数据

    一个很简单的tcp服务器如下:

    from socket import *# 创建sockettcp_server_socket = socket(AF_INET, SOCK_STREAM)# 本地信息address = ('', 7788)# 绑定tcp_server_socket.bind(address)# 使用socket创建的套接字默认的属性是主动的,使用listen将其变为被动的,这样就可以接收别人的链接了tcp_server_socket.listen(128)# 如果有新的客户端来链接服务器,那么就产生一个新的套接字专门为这个客户端服务# client_socket用来为这个客户端服务# tcp_server_socket就可以省下来专门等待其他新客户端的链接client_socket, clientAddr = tcp_server_socket.accept()# 接收对方发送过来的数据recv_data = client_socket.recv(1024)  # 接收1024个字节print('接收到的数据为:', recv_data.decode('gbk'))# 发送一些数据到客户端client_socket.send("thank you !".encode('gbk'))# 关闭为这个客户端服务的套接字,只要关闭了,就意味着为不能再为这个客户端服务了,如果还需要服务,只能再次重新连接client_socket.close()

    运行流程:

    <1>tcp服务器

    接收到的数据为: 你在么?

    <2>网络调试助手:

     

    ==================================================================

    注:以上课程笔记为学习时整理的老师课堂学习笔记,如需转载,如需完整笔记,请私聊联系我。

    专题Python每天更新我的学习笔记。以上内容整理与上课笔记,更多详情查看原文链接,我的公众号干货持续更新中

    原文链接:公众号文章Python开发者交流平台

  • 相关阅读:
    NFC性价比高频读卡器首选方案:FM17550
    关于ESP8266和ESP8285的对比
    有没有比NRF51822更好的智能穿戴蓝牙方案
    zigbee CC2530首选方案模组:TZU06A1
    PAN3501兼容AS3933-BTST
    NRF51822和NRF52832的主要区别
    集成模拟温度传感器低成本2.4G CC2500RGPR 中文手册
    USB2.0主机控制器 UPD720114 简单详解
    存储器HK1225-7EQ 使用说明书资料
    爬虫 + 数据
  • 原文地址:https://www.cnblogs.com/wangting888/p/9701952.html
Copyright © 2011-2022 走看看