Python网络编程与互联网应用协议详解
1. 网络编程基础
在网络编程中, timeout
异常是一个重要的概念。当套接字操作超时时会引发该异常,不过这只有在使用 setdefaulttimeout()
函数或套接字对象的 settimeout()
方法设置了超时时间时才会发生,异常值为字符串 'timeout'
。
下面是一个简单的 UDP 客户端和服务器示例:
# UDP message server
# Receive small packets from anywhere and print them out
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(("",10000))
while 1:
data, address = s.recvfrom(256)
print address[0], "said : ", data
# UDP message client
# Send a message packet to the server
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
while 1:
msg = raw_input("Say something : ")
if msg:
s.sendto(msg, ("servername",10000