网络编程脚本可以使用多种编程语言实现,例如Python、JavaScript等。下面我将分别提供Python和JavaScript的网络编程脚本示例。
Python网络编程脚本示例
1. 简单的TCP服务器
```python
import socket
def start_tcp_server(host, port):
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.bind((host, port))
server_socket.listen()
print(f"Server listening on {host}:{port}")
while True:
client_socket, addr = server_socket.accept()
print(f"Connection from {addr} has been established.")
message = client_socket.recv(1024).decode('utf-8')
print(f"Received message: {message}")
client_socket.close()
if __name__ == "__main__":
start_tcp_server('localhost', 12345)
```
2. 简单的TCP客户端
```python
import socket
def start_tcp_client(host, port):
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect((host, port))
message = 'Hello, server!'
client_socket.sendall(message.encode())
response = client_socket.recv(1024)
print(f"Received: {response.decode()}")
client_socket.close()
if __name__ == "__main__":
start_tcp_client('localhost', 12345)
```
3. 使用requests库进行HTTP请求
```python
import requests
def fetch_url(url):
response = requests.get(url)
print(response.status_code)
print(response.text)
if __name__ == "__main__":
fetch_url('https://www.example.com')
```
JavaScript网络编程脚本示例
1. 使用Node.js创建简单的TCP服务器
```javascript
const net = require('net');
function startTcpServer(host, port) {
const server = net.createServer((socket) => {
console.log(`Connection from ${socket.remoteAddress}:${socket.remotePort} has been established.`);
socket.on('data', (data) => {
console.log(`Received: ${data}`);
socket.write('Hello, client!');
});
socket.on('end', () => {
console.log('Client disconnected');
});
});
server.listen(port, host, () => {
console.log(`Server listening on ${host}:${port}`);
});
}
startTcpServer('127.0.0.1', 12345);
```
2. 使用Node.js创建简单的TCP客户端
```javascript
const net = require('net');
function startTcpClient(host, port) {
const client = new net.Socket();
client.connect(port, host, () => {
console.log(`Connected to ${host}:${port}`);
client.write('Hello, server!');
});
client.on('data', (data) => {
console.log(`Received: ${data}`);
});
client.on('close', () => {
console.log('Disconnected from server');
});
}
startTcpClient('127.0.0.1', 12345);
```
3. 使用axios库进行HTTP请求
```javascript
const axios = require('axios');
async function fetchUrl(url) {
try {
const response = await axios.get(url);
console.log(response.status);
console.log(response.data);
} catch (error) {
console.error(error);
}
}
fetchUrl('https://api.github.com');
```
总结
以上示例展示了如何使用Python和JavaScript编写基本的网络编程脚本,包括TCP服务器和客户端的创建、HTTP请求等。根据具体需求,可以选择合适的编程语言和库来实现更复杂的网络应用。