tcp服务端socket

import socket

if __name__ == '__main__':
    # 创建tcp服务端socket
    tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    # 立即释放端口号,重用端口
    # SOL_SOCKET: 表示当前socket
    # SO_REUSEADDR: 是否立即释放端口选项
    # True:表示立即释放端口
    tcp_server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, True)
    # 绑定端口号
    tcp_server_socket.bind(("", 7878))
    # 设置监听,把主动套接字变成被动套接字, 被动套接字:以后只能接收客户端连接请求,不能收发消息,收发消息使用返回的新套接字
    # 128:表示等待的最大连接数
    tcp_server_socket.listen(128)
    # 等待接收客户端连接请求, 返回一个新的套接字说明建立连接成功,以后和客户端通信使用service_client_socket
    # accept会一直等待客户端建立连接,只有连接建立成功才会继续往下执行代码否则一直等待
    service_client_socket, ip_port = tcp_server_socket.accept()
    print(ip_port)
    # 接收客户端的消息
    recv_data = service_client_socket.recv(1024)
    # 这里可以自己定义编码格式,编码错误了则忽略
    print(recv_data.decode(encoding= 'utf-8', errors='ignore'), len(recv_data))     # ʹtcp~ 26
    # 解码数据
    recv_content = recv_data.decode("gbk")
    print(recv_content)  # 哈哈,我使用tcp发送数据啦~
    # 发送数据
    service_client_socket.send("这里是服务端。。。".encode("gbk"))
    # 关闭服务于客户端的socket
    service_client_socket.close()
    # 关闭服务端的socket
    tcp_server_socket.close()

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • tcp回显客户端发送的数据

    skylark
  • udp发送广播消息

    skylark
  • 返回固定页面的web服务器

    skylark
  • tcp回显客户端发送的数据

    skylark
  • 网页实时聊天之PHP实现websocket

    前言 websocket 作为 HTML5 里一个新的特性一直很受人关注,因为它真的非常酷,打破了 http “请求-响应”的常规思维,实现了服务器向客户端主动...

    枕边书
  • Python使用UDP广播实现服务器自动发现

    机房管理软件或者教学软件一般都由服务器和客户端组成,当客户端启动之后会自动搜索服务器,这是如何实现的呢?下面通过一段代码来演示其中一种比较高效的方法。 客户端...

    Python小屋屋主
  • Socket在线聊天室

    因为刚好课上学socket,写一个聊天室吧。socket.io封装的很好,不用自己写,有空可以自己用socket api试试。

    gojam
  • php实现socket网络编程

    之前本人其实写过一个tcp多进程服务器了http://www.php20.cn/article/139,本文将总结以及完善php实现网络服务器相关代码

    仙士可
  • 基于TCP的套接字

    socket通信流程与打电话流程类似,我们就以打电话为例来实现一个low版的套接字通信

    超蛋lhy
  • python的socket编程

    转自http://www.oschina.net/question/12_76126

    py3study

扫码关注云+社区

领取腾讯云代金券