码迷,mamicode.com
首页 > 其他好文 > 详细

基于udp的scoket通信

时间:2018-10-04 16:03:06      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:时间服务器   port   时间格式   strftime   pre   close   sendto   bind   基于   

  1.udp例子1

  udpserver.py

# udp的server,不需要进行监听也不需要建立连接
    # 在启动服务之后只能被动的等待客户端发送消息过来
    # 客户端发送消息的同时还会自带地址信息
    # server消息回复的时候,不仅需要发送消息,还需要带上对方的地址


import socket

sk = socket.socket(type=socket.SOCK_DGRAM)  # 创建udp的socket

sk.bind((127.0.0.1, 8080))    # 绑定ip与端口

info = ‘‘
while True:
    msg, addr = sk.recvfrom(1024)   # 阻塞接收数据,得到数据内容与目标的ip地址
    print(msg.decode(utf-8))
    info = input(发送到client的数据内容:)
    sk.sendto(info.encode(utf-8), addr)    # 消息内容,并且指定目标IP端口发送

sk.close()

  udpclient1.py

import socket

sk = socket.socket(type=socket.SOCK_DGRAM)

ip_port = (127.0.0.1, 8080)

info = ‘‘
while True:
    info = input(发送到udp服务端的内容:)
    sk.sendto(info.encode(utf-8), ip_port)    # 消息内容,并且指定目标ip和端口发送数据,ip和端口是为元组的参数
    msg, addr = sk.recvfrom(1024)   # 阻塞接收数据,得到目标发送的信息和目标的ip端口
    print(msg.decode(utf-8))

sk.close()

  ucpclient2.py

import socket

sk = socket.socket(type=socket.SOCK_DGRAM)

ip_port = (127.0.0.1, 8080)

info = ‘‘
while True:
    info = input(发送到udp服务端的内容:)
    sk.sendto(info.encode(utf-8), ip_port)    # 消息内容,并且指定目标ip和端口发送数据,ip和端口是为元组的参数
    msg, addr = sk.recvfrom(1024)   # 阻塞接收数据,得到目标发送的信息和目标的ip端口
    print(msg.decode(utf-8))

sk.close()

 

  2.简单udp时间服务器例子

  udpserver.py

# udp server端提供服务
    # 接收信息  时间格式
    # 将server端的时间转换成接收到的时间格式的格式,发送给udp客户端

import socket
import time

sk = socket.socket(type=socket.SOCK_DGRAM)
sk.bind((127.0.0.1, 8080))
msg = ‘‘
addr = ()
while True:
    msg, addr = sk.recvfrom(1024)
    if msg.decode(utf-8) == bye:
        break
    sk.sendto(time.strftime(msg.decode(utf-8)).encode(utf-8), addr)

sk.close()

  udpclient.py

import socket

sk = socket.socket(type=socket.SOCK_DGRAM)
ip_port = (127.0.0.1, 8080)
sk.sendto(b%Y-%m-%d %H:%M:%S, ip_port)
msg, addr = sk.recvfrom(1024)
print(msg.decode(utf-8))

 

基于udp的scoket通信

标签:时间服务器   port   时间格式   strftime   pre   close   sendto   bind   基于   

原文地址:https://www.cnblogs.com/whylinux/p/9742273.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!