1. 程式人生 > >自己寫的HTTP V1.0版本

自己寫的HTTP V1.0版本

from socket import *

def handleClient(connfd):
request=connfd.recv(4096)
# print(request)
#將request請求按行分割
request_lines=request.splitlines()
for line in request_lines:
print(line.decode())
try:
f=open(‘index.html’)
except IOError:
response=‘HTTP/1.1 404 not found\r\n’
response+=’\r\n’#空行
response+=‘Sorry not found

==’
else:
response=‘HTTP/1.1 200 OK\r\n’
response+=’\r\n’#空行
response+=f.read()
f.close()
finally:
#傳送給瀏覽器
connfd.send(response.encode())

#建立套接字
def main():
sockfd=socket()
#埠號不被佔用
sockfd.setsockopt(SOL_SOCKET,SO_REUSEADDR,1)
sockfd.bind((‘0.0.0.0’,8888))
sockfd.listen(3)
print(‘Listen to the port 8888’)
while True:
connfd,addr = sockfd.accept()
#處理請求
handleClient(connfd)
connfd.close()
if name

== ‘main’:
main()