socket监听服务器代码示例
时间: 2023-08-17 08:06:15 浏览: 35
以下是一个简单的Python Socket监听服务器代码示例:
```python
import socket
# 创建socket对象
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 获取本地主机名
host = socket.gethostname()
port = 8000
# 绑定端口
server_socket.bind((host, port))
# 设置最大连接数,超过后排队
server_socket.listen(5)
while True:
# 建立客户端连接
client_socket, addr = server_socket.accept()
print("连接地址: %s" % str(addr))
msg = '欢迎访问菜鸟教程!' + "\r\n"
client_socket.send(msg.encode('utf-8'))
client_socket.close()
```
这个服务器监听在本地主机的8000端口,当有客户端连接时,向客户端发送“欢迎访问菜鸟教程!”的消息,并关闭连接。你可以根据需要修改代码来实现更复杂的功能。
相关问题
Java实现socket监听服务器代码示例
以下是一个简单的Java Socket监听服务器代码示例:
```java
import java.net.*;
import java.io.*;
public class Server {
public static void main(String[] args) throws IOException {
ServerSocket serverSocket = new ServerSocket(8000);
System.out.println("服务器已启动,等待客户端连接...");
while (true) {
Socket clientSocket = serverSocket.accept();
System.out.println("客户端已连接,地址为:" + clientSocket.getInetAddress());
BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
String line;
while ((line = in.readLine()) != null) {
System.out.println("客户端消息:" + line);
out.println("服务端收到消息:" + line);
}
System.out.println("客户端已断开连接");
clientSocket.close();
}
}
}
```
这个服务器监听在本地主机的8000端口,当有客户端连接时,向控制台输出客户端地址,并不断接收客户端发送的消息,将消息原样返回给客户端。你可以根据需要修改代码来实现更复杂的功能。注意:这个代码示例没有考虑多线程问题,可能会导致阻塞。
python socket服务器代码示例
以下是一个简单的Python socket服务器代码示例:
``` python
import socket
HOST = '' # 服务器 IP
PORT = 8888 # 服务器端口号
BUFFER_SIZE = 1024 # 缓冲区大小
# 创建 TCP socket 对象
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定主机和端口号
s.bind((HOST, PORT))
# 监听客户端请求
s.listen(1)
# 进入循环等待客户端连接
while True:
# 接受客户端连接
conn, addr = s.accept()
print('Connected by', addr)
# 接收客户端消息
data = conn.recv(BUFFER_SIZE)
# 处理客户端消息
# ...
# 发送响应消息给客户端
conn.sendall(b'Response message')
# 关闭连接
conn.close()
```
该示例创建了一个TCP socket服务器,绑定在本地的8888端口,接受客户端连接并接收客户端消息,处理后返回响应消息给客户端,然后关闭连接。您可以根据实际需求修改代码。