iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >怎么实现Udp接收数据
  • 701
分享到

怎么实现Udp接收数据

2023-06-02 03:06:40 701人浏览 泡泡鱼
摘要

本篇内容主要讲解“怎么实现Udp接收数据”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么实现Udp接收数据”吧!  udp接收数据,网络调试助手担任发送方,但发送时需要对方的也就是虚拟机的ip

本篇内容主要讲解“怎么实现Udp接收数据”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么实现Udp接收数据”吧!

  udp接收数据,网络调试助手担任发送方,但发送时需要对方的也就是虚拟机的ip 和端口,ip可以通过config获取,那么如何让一个程序拥有一个固定端口呢?

  创建套接字的时候是没有端口号的,好比买了手机没有手机号,别人是找不到你的,所以要有一个固定的端口号,用udp_Socket.bind()绑定一个端口

  接下来写程序,终端中:

  vim 05 绑定端口用来接收数据.py

  写程序的思路: if name==“main”:

  main()

  然后再def main():

  在这个函数里写代码。

  用注释来搭建流程

  #1、创建套接字

  #2、绑定一个本地信息

  #3、接收数据

  #4、打印接收到的数据

  #5、关闭套接字

  流程搭建完之后开始写代码,创建套接字的时候,用的是socket.XX,此时需要在代码的最上方导入socekt,用到什么导什么,代码不是从第一行开始写的。

  因为当代码比较多的时候,比如200多行,不确定会用到什么,所以用到什么导入什么,用到什么再调什么。

  1、udp绑定端口用来接收数据.py

  代码具体形式如下:

  import socket

  def main():

  #1、创建套接字

  udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)

  #2、绑定一个本地信息(udp ctrl n自动补全),必须绑定自己电脑的ip port其它电脑的不行

  绑定的是一个元组,用localaddr变量表示,本地ip,绑定端口,端口号大于1024

  localaddr =("",7788)

  udp_socket.bind(localaddr)

  #3、接收数据(发送数据是套接字.sendto 接收是套接字.recvfrom(1024),

  1024表示本次接收的最大字节数),并用recv_data变量接收

  recv_data = udp_socket.recvfrom(1024)

  #4、打印接收到的数据

  print(recv_data)

  #5、关闭套接字

  udp_socket.close()

  if __name__=="__main__":

  main()

  代码完成后,终端中python3 05 绑定端口用来接收数据.py 运行程序,此时由网络调试助手发送过来的消息就可以在终端中收到,收到的内容显示情况如下:

怎么实现Udp接收数据

  打印出来的数据即变量recv_data,是一个元组,第一个参数是发送的数据,第二个参数是一个小元组,是发送方的ip和端口。

  想要在终端中只显示接收到的数据,不显示对方的ip 和端口,操作如下:

  cp 05 绑定端口用来接收数据.py 06解析出接收到数据.py

  2、解析出接收到数据.py

  关于注释:

  如果在一行的开头注释,直接用# 后面跟上一个空格 再写注释内容

  如果是在代码后面注释 代码后面加两个空格 再用# 跟上一个空格 再写注释内容

  打印代码调整时的思路:

  print(“s% : s%”,%(send_addr,recv_msg))

  但send_addr是一个元组,不能直接这样用,需要用str(send_addr)来转换

  recv_msg也不能直接用,因为发送时是用编码编成了bite类型,收到的也是bite类型,如果直接发送过来的是字母,可以收到,但是如果发送过来是汉字,收到的是乱码,此时需要解码,

  recv_msg.decode(“utf-8”),但是此时用windows的网络调试助手发送中文过来还是乱码,因为windows不是用utf-8编码的,用的是gbk编码,所以此时解码需要用gbk,即:recv_msg.decode(“gbk”)

  如果将网络调试助手放到ubantu中,解码还是要用utf-8来解

  import socket

  def main():

  #1、创建套接字

  udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)

  #2、绑定一个本地信息

  localaddr =("",7788)

  udp_socket.bind(localaddr)

  #3、接收数据

  recv_data = udp_socket.recvfrom(1024)

  recv_msg = recv_data[0] # 用来接收发送的内容

  send_addr = recv_data[1] # 用来接收发送方的ip和port

  #4、打印接收到的数据

  #print(recv_data) # 此时打印的代码需要注释掉,重新调整

  pint("s%:s%",%(str(send_addr),recv_msg.decode("gbk")))

  #5、关闭套接字

  udp_socket.close()

  if __name__=="__main__":

  main()

  **总结:无锡妇科检查医院 Http://www.87554006.com/

  发送数据步骤:

  1.创建套接字

  2.发送数据

  3.关闭套接字

  接收数据步骤:

  1.创建套接字

  2.绑定本地的ip 端口

  3.接收数据

  4.打印套接字

  想要在终端中循环一直接收数据,操作如下:

  cp 06解析出接收到数据.py 07循环接收数据.py

  vim 07循环接收数据.py

  3、循环接收数据.py

  想要循环接收,就要用while true ,对接收和打印代码进行while true:

  ESC 大V 上下箭头选中,大于号向右缩进

  import socket

  def main():

  #1、创建套接字

  udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)

  #2、绑定一个本地信息

  localaddr =("",7788)

  udp_socket.bind(localaddr)

  #3、接收数据

  while True:

  recv_data = udp_socket.recvfrom(1024)

  recv_msg = recv_data[0] # 用来接收发送的内容

  send_addr = recv_data[1] # 用来接收发送方的ip和port

  #4、打印接收到的数据

  pint("s%:s%",%(str(send_addr),recv_msg.decode("gbk")))

  #5、关闭套接字

  udp_socket.close()

  if __name__=="__main__":

  main()

到此,相信大家对“怎么实现Udp接收数据”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 怎么实现Udp接收数据

本文链接: https://www.lsjlt.com/news/228784.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么实现Udp接收数据
    本篇内容主要讲解“怎么实现Udp接收数据”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么实现Udp接收数据”吧!  udp接收数据,网络调试助手担任发送方,但发送时需要对方的也就是虚拟机的ip...
    99+
    2023-06-02
  • java怎么用UDP实时接收数据
    要使用UDP实时接收数据,你可以使用Java的`DatagramSocket`类和`DatagramPacket`类。以下是一个简单...
    99+
    2023-08-19
    java
  • java中UDP如何接收数据
    这篇文章给大家分享的是有关java中UDP如何接收数据的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Java是什么Java是一门面向对象编程语言,可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程...
    99+
    2023-06-14
  • Linux 下 nc 发送接收 udp、tcp数据
    nc,全名叫 netcat,它可以用来完成很多的网络功能,譬如端口扫描、建立TCP/UDP连接,数据传输、网络调试等等,因此,它也常被称为网络工具的 瑞士军刀 。 一、只服务端使用nc 备注:这种方式...
    99+
    2023-09-04
    linux udp tcp/ip
  • php怎么实现实时接收数据
    本篇内容主要讲解“php怎么实现实时接收数据”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php怎么实现实时接收数据”吧!   1.发布订阅的Pub/Sub ...
    99+
    2024-04-02
  • Java NIO实例UDP发送接收数据代码分享
    Java的NIO包中,有一个专门用于发送UDP数据包的类:DatagramChannel,UDP是一种无连接的网络协议,一般用于发送一些准确度要求不太高的数据等。完整的服务端程序如下:public class StatisticsServe...
    99+
    2023-05-30
    java nio udp
  • C#怎么使用udp实现消息的接收和发送
    本篇内容主要讲解“C#怎么使用udp实现消息的接收和发送”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#怎么使用udp实现消息的接收和发送”吧!使用udp实现消息的接收和发送代码比较简单,但是...
    99+
    2023-07-05
  • Java网络编程UDP协议发送接收数据
    本文实例为大家分享了Java网络编程UDP协议发送接收数据的具体代码,供大家参考,具体内容如下 UDP协议发送数据步骤 A:创建发送端socket对象; B:创建数据,并把数据打包;...
    99+
    2024-04-02
  • 【Python】使用python通过TCP或UDP,实现收发报文数据
    文章目录 1. socket 模块2. 通过TCP收发报文3. 通过UDP收发报文 1. socket 模块 socket 又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答...
    99+
    2023-10-01
    udp tcp/ip python 网络协议
  • C#实现套接字发送接收数据
    本文实例为大家分享了C#实现套接字发送接收数据的具体代码,供大家参考,具体内容如下 服务端 namespace TestServer { public partial ...
    99+
    2024-04-02
  • php怎么接收formdata数据
    要使用 PHP 接收 FormData 数据,你可以通过 `$_POST`、`$_FILES` 和 `$_REQUEST` 超全局变...
    99+
    2023-09-07
    php
  • C#使用udp如何实现消息的接收和发送
    目录使用udp实现消息的接收和发送C# 运用UDP服务端界面客户端界面总结使用udp实现消息的接收和发送 代码比较简单,但是别忘记关闭防火墙进行测试。 首先便是服务端,使用Socke...
    99+
    2023-02-26
    C#使用udp udp消息接收 udp消息发送
  • UDP服务器—实现数据通信
    目录 前言 1.接口介绍 2.编写服务器 3.编写客户端 4.测试 总结 前言         在这篇文章中为大家介绍如何通过编码实现数据通信,实现思路是根据前面介绍的网络编程函数编写一个服务端和客户端,实现客户端和服务端双方通信 1...
    99+
    2023-08-30
    udp 服务器 网络协议
  • vue项目嵌套iframe怎么实现发送、接收数据
    这篇文章主要介绍“vue项目嵌套iframe怎么实现发送、接收数据”,在日常操作中,相信很多人在vue项目嵌套iframe怎么实现发送、接收数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue项目嵌套if...
    99+
    2023-06-30
  • C#如何实现套接字发送接收数据
    这篇文章主要介绍了C#如何实现套接字发送接收数据,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下服务端namespace TestServer{ ...
    99+
    2023-06-21
  • springboot怎么接收表单数据
    在Spring Boot中,可以使用`@RequestParam`注解来接收表单数据。以下是示例代码:```java@PostMap...
    99+
    2023-08-14
    springboot
  • AJAX中怎么接收JSON数据
    AJAX中怎么接收JSON数据,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1、 JSON如何来表示对象的 2、 JSON如何来表示数组的 复...
    99+
    2024-04-02
  • C# 三种方式实现Socket数据接收
    目录Stream.Read 方法将数据接收放到 while (true)Stream.Read 方法 当在派生类中重写时,从当前流读取字节序列,并将此流中的位置提升读取的字节数。 语...
    99+
    2024-04-02
  • uniapp怎么改变接收的数据
    随着移动应用开发的不断发展,很多开发者也在不断探索新的技术方案,其中uniapp无疑是目前比较受欢迎的一种。虽然uniapp提供了很多便利,但是对于一些特定需求,开发者可能还需要一些额外的技巧。本文将介绍如何在uniapp中改变接收的数据。...
    99+
    2023-05-14
  • C# Socket数据接收的三种实现方式
    Stream.Read 方法 当在派生类中重写时,从当前流读取字节序列,并将此流中的位置提升读取的字节数。 语法: public abstract int Read(byt...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作