zoukankan      html  css  js  c++  java
  • udp协议传输

    服务端   代码:

    1 from socket import *
    2 
    3 udp_server = socket(AF_INET,SOCK_DGRAM)  # 数据报式套接字
    4 udp_server.bind(('127.0.0.1',8080))
    5 while True:
    6     data = udp_server.recvfrom(1024)   # 接受的是一个元组,该元组第一个参数为接受的字节,第二个参数为发送方的地址
    7     print(data)
    8     print(data[0].decode())

    客户端   代码:

    1 from socket import *
    2 
    3 udp_client = socket(AF_INET, SOCK_DGRAM)
    4 udp_client.sendto('你好,python'.encode(), ('127.0.0.1', 8080))  # udp发送的为一个元组,第一个参数为字节,第二个参数为接收方的地址

    tcp和udp区别

    udp可以接受空字节  recvfrom()可以接受空   tcp不可以 recv()

    udp可以实现并发   同时可以服务多个客户端

    实现时间获取程序   服务端:

     1 from socket import *
     2 import time
     3 
     4 udp_server = socket(AF_INET, SOCK_DGRAM)
     5 udp_server.bind(('127.0.0.1', 8080))
     6 while True:
     7     data, addr = udp_server.recvfrom(1024)
     8     # print(data.decode())
     9     if not data:
    10         fm = '%Y-%m-%d %X'
    11     else:
    12         fm = data.decode()
    13     udp_server.sendto(time.strftime(fm).encode(), addr)

    服务端:

    1 from socket import *
    2 
    3 upp_client = socket(AF_INET,SOCK_DGRAM)
    4 while True:
    5     msg = input('请输入格式:')
    6     upp_client.sendto(msg.encode(),('127.0.0.1',8080))
    7     data,addr = upp_client.recvfrom(1024)
    8     print('服务器发过来的信息为',data.decode())
  • 相关阅读:
    在Selenium自动化中查找损坏的链接
    WebDriverManager
    在TestNG中重试失败的测试
    算法:汉诺塔
    Java 多线程
    spring ioc原理(看完后大家可以自己写一个spring)
    Apache与Nginx的区别
    Apache与Nginx的区分比较
    Java 设计模式
    Java 理论与实践: 正确使用 Volatile 变量
  • 原文地址:https://www.cnblogs.com/ch2020/p/12524794.html
Copyright © 2011-2022 走看看