1、服务端code文字版
import socket
server = socket.socket()
server.bind(('127.0.0.1', 8001))
server.listen()
while True:
conn, addr = server.accept()
from_brower_msg = conn.recv(1024)
print(from_brower_msg)
conn.send(b'HTTP/1.1 200 ok\r\n\r\n')
conn.send(b"hahaha")
conn.close()
2、服务端code网页版1
import socket
server = socket.socket()
server.bind(('127.0.0.1', 8001))
server.listen()
while True:
conn, addr = server.accept()
from_browser_msg = conn.recv(1024)
print(from_browser_msg)
conn.send(b'HTTP/1.1 200 ok\r\n\r\n')
with open('test.html', 'rb') as f:
data = f.read()
conn.send(data)
conn.close()
3、服务端code网页版2
import socket
server = socket.socket()
server.bind(('127.0.0.1', 8001))
server.listen()
while True:
conn, addr = server.accept()
from_browser_msg = conn.recv(1024)
path = from_browser_msg.decode('utf-8').split(' ')[1]
print(path)
conn.send(b'HTTP/1.1 200 ok\r\n\r\n')
if path == '/':
with open('test.html', 'rb') as f:
data = f.read()
elif path == '/style.css':
with open('style.css', 'rb') as f:
data = f.read()
elif path == '/style.js':
with open('style.js', 'rb') as f:
data = f.read()
elif path == '/1.jpg':
with open('1.jpg', 'rb') as f:
data = f.read()
conn.send(data)
conn.close()
3、服务端code网页函数版
import socket
server = socket.socket()
server.bind(('127.0.0.1', 8001))
server.listen()
def home():
with open('test.html', 'rb') as f:
data = f.read()
def css():
with open('style.css', 'rb') as f:
data = f.read()
return data
def js():
with open('style.js', 'rb') as f:
data = f.read()
return data
def pic():
with open('1.jpg', 'rb') as f:
data = f.read()
return data
while True:
conn, addr = server.accept()
from_browser_msg = conn.recv(1024)
path = from_browser_msg.decode('utf-8').split(' ')[1]
print(path)
conn.send(b'HTTP/1.1 200 ok\r\n\r\n')
if path == '/':
ret = home()
elif path == '/style.css':
ret = css()
elif path == '/style.js':
ret = js()
elif path == '/1.jpg':
ret = pic()
conn.send(ret)
conn.close()
3、服务端code网页多线程版
import socket
from threading import Thread
server = socket.socket()
server.bind(('127.0.0.1', 8001))
server.listen()
def home(conn):
with open('test.html', 'rb') as f:
data = f.read()
conn.send(data)
conn.close()
def css(conn):
with open('style.css', 'rb') as f:
data = f.read()
return data
conn.send(data)
conn.close()
def js(conn):
with open('style.js', 'rb') as f:
data = f.read()
return data
conn.send(data)
conn.close()
def pic(conn):
with open('1.jpg', 'rb') as f:
data = f.read()
return data
conn.send(data)
conn.close()
def notfound(conn):
conn.send(b'not found 404!')
conn.close()
urlpatterns = [
('/', home),
('/style.css', css),
('test.js', js),
('/1.jpg', pic)
]
while True:
conn, addr = server.accept()
from_browser_msg = conn.recv(1024)
path = from_browser_msg.decode('utf-8').split(' ')[1]
print(path)
conn.send(b'HTTP/1.1 200 ok\r\n\r\n')
for url in urlpatterns:
if path == url[0]:
t = Thread(target=url[1], args=(conn,))
t.start()
break
else:
t = Thread(target=notfound, args=(conn,))
t.start()