基于UDP协议的Socket通信:服务器端代码实现

本示例演示了使用UDP协议实现Socket通信的服务器端代码。用户需要根据提示,在右侧编辑器补充代码,实现接收客户端发送的数据,并打印输出接收到的信息。

服务器端开放

  • IP地址:'127.0.0.1' 或者 'localhost'
  • 端口号:'12345'

用于接收从客户端发送过来的数据

  • 用户名:'admin'
  • 密码:'123'

测试说明

客户端代码:

public class UDPClient {
    public static void main(String[] args) throws IOException {
        /*
         * 向服务器端发送数据
         */
        // 1.定义服务器的地址、端口号、数据
        InetAddress address = InetAddress.getByName("localhost");
        int port = 12345;
        byte[] data = "用户名:admin;密码:123".getBytes();
        // 2.创建数据报,包含发送的数据信息
        DatagramPacket packet = new DatagramPacket(data, data.length, address, port);
        // 3.创建DatagramSocket对象
        DatagramSocket socket = new DatagramSocket();
        // 4.向服务器端发送数据报
        socket.send(packet);
        // 5.关闭资源
        socket.close();
    }
}

平台会对你编写的代码进行测试:

测试输入:

预期输出:
****服务器端已经启动,等待客户端发送数据
我是服务器,客户端说:用户名:admin;密码:123

代码补充

package step3;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;

public class UDPServer {
    public static void main(String[] args) throws IOException {
        /*
         * 接收客户端发送的数据
         */
        // 1.创建服务器端DatagramSocket,指定端口
        DatagramSocket socket = new DatagramSocket(12345);
        System.out.println("****服务器端已经启动,等待客户端发送数据");
        // 2.创建数据报,用于接收客户端发送的数据
        // 创建字节数组,指定接收的数据包的大小1024
        byte[] data = new byte[1024];
        DatagramPacket packet = new DatagramPacket(data, data.length);
        // 3.接收客户端发送的数据
        socket.receive(packet);
        // 4.读取数据
        String info = new String(data, 0, packet.getLength());
        System.out.println("我是服务器,客户端说:" + info);
        // 5.关闭资源
        socket.close();
    }
}
基于UDP协议的Socket通信:服务器端代码实现

原文地址: https://www.cveoy.top/t/topic/oaEV 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录