zoukankan      html  css  js  c++  java
  • 网络编程

    网络编程:

      软件:
        客户端:   cs架构      浏览器:    bs架构
      如何实现相互通信:
        1.编写两个软件,两个软件之前的相互通信
        2.用两个网线连接起来
        3.使用交换机相互通信(局域网,使用ipconfig在Windows中,在其他操作系统中用ifconfig)
        4.交换机和多个路由器
        5.公网ip
    

    上代码

    服务端:

    import socket
    server = socket.socket() #创建服务器对象
    server.bind(("192.168.142.1",8001))#绑定ip和端口
    server.listen(5)#服务器只接受五次请求
    coon,addr = server.accept()#等待客户端来连接
    print("已经连接了客户端",coon,addr)
    #coon是客户端和服务端连接的对象,addr是客户端的地址
    data = coon.recv(1024)#接收客户端发来的消息,接受1024个字节
    print(data)
    coon.send(b"hai")#服务端收到消息后发送消息给客户端
    coon.close()#与客户端断开连接
    server.close()#关闭服务器
    

    客户端:

    import socket
    client = socket.socket()#创建socket通信
    client.connect(("192.168.142.1",8001))#向服务器发送请求
    content = input("Input")
    client.send(content.encode('utf8'))
    # client.send(b"I am a client")#连接成功后向服务器发送信息
    data = client.recv(1024)#收到服务器返回的字节
    print(data)
    client.close()#关闭客户端

    举例:

    服务端:
    server = socket.socket()
    
    server.bind(('192.168.13.116',8001))
    
    server.listen(5)
    
    while True:
        conn,addr = server.accept()
        # 字节类型
        while True:
            data = conn.recv(1024) # 阻塞
            if data == b'exit':
                break
            response = data + b' SB'
            conn.send(response)
    
        conn.close()
    
    
    
    客户端:sk.connect(('192.168.13.116',8001))
    
    while True:
        name = input("请输入姓名:")
        sk.send(name.encode('utf-8')) # 字节
        if name == 'exit':
            break
    
        response = sk.recv(1024) # 字节
        print(response.decode('utf-8'))
    
    sk.close()
    import socket
    server = socket.socket() #创建服务器对象
    server.bind(("192.168.142.1",8001))#绑定ip和端口
    server.listen(5)#服务器只接受五次请求
    coon,addr = server.accept()#等待客户端来连接
    print("已经连接了客户端",coon,addr)
    #coon是客户端和服务端连接的对象,addr是客户端的地址
    data = coon.recv(1024)#接收客户端发来的消息,接受1024个字节
    print(data)
    coon.send(b"hai")#服务端收到消息后发送消息给客户端
    coon.close()#与客户端断开连接
    server.close()#关闭服务器
  • 相关阅读:
    信息竞赛日志
    Lesson0423
    考试总结
    2020省队选拔前(4.13-5.31)计划
    mvcc浅析
    浅谈cgi和fastcgi
    mysql事务
    mysql慢sql优化总结
    简述缓存击穿 / 缓存雪崩 / 缓存穿透 以及各自的解决方案
    PHP的异常处理机制浅析
  • 原文地址:https://www.cnblogs.com/wqzn/p/9580637.html
Copyright © 2011-2022 走看看