zoukankan      html  css  js  c++  java
  • python

    socket编程:

    Server端:

    import socket
    
    #创建服务端的scoket对象socket
    socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    host = '127.0.0.1'
    port = 1111
    #绑定地址
    socket.bind((host,port))
    #设置监听
    socket.listen(5)
    #等待客户端连接
    #注:accept()函数会返回一个元组
    #元素1为客户端的socket对象,元素2为客户端的地址(IP地址,端口号)
    clientscoket,addr = socket.accept()
    
    #while循环是为了让对话一直进行,知道客户端输入q
    while True:
        #接收客户端的请求
        recvmsg = clientscoket.recv(1024)
        #把接收到的数据进行解码
        strData = recvmsg.decode('utf-8')
        #判断客户端是否发送q,是就退出此次对话
        if strData == 'q':
            break
        print('收到:',strData)
        msg = input('回复:')
        clientscoket.send(msg.encode('utf-8'))
    socket.close()

    客户端:

    import socket
    #创建一个客户端的socket对象;使用给定的地址族、套接字类型、协议编号(默认为0)来创建套接字
    client = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    
    #设置服务端的ip地址
    host = '127.0.0.1'
    #设置端口
    port = 1111
    #连接服务端
    client.connect((host,port))
    
    #while循环是为了保证能持续进行对话
    while True:
        #输入发送的信息
        sendmsg = input('请输入:')
        #如果客户端的输入是q,则停止对话并退出程序
        if sendmsg =='q':
            break
        #发送数据,以二进制的形式发送数据,所以要进行编码
        client.send(sendmsg.encode('utf-8'))
        msg = client.recv(1024)
        #接收服务端返回的数据,需要解码
        print(msg.decode('utf-8'))
    
    #关闭客户端
    client.close()
  • 相关阅读:
    (一)类数组对象NodeList
    childNodes遍历DOM节点树
    innerText兼容问题处理
    JS中定义对象的几种方式
    javaScript中闭包的工作原理
    输出一组数字中的最小数
    HttpServletResponse对象
    Web.xml过滤器配置及执行顺序概念
    pageContext对象的用法详述
    请求转发与请求重定向
  • 原文地址:https://www.cnblogs.com/muzii/p/14207795.html
Copyright © 2011-2022 走看看