Python 我的http头有什么问题?
在服务器和浏览器之间建立连接后,我尝试将http标头发送到浏览器:Python 我的http头有什么问题?,python,python-2.7,sockets,Python,Python 2.7,Sockets,在服务器和浏览器之间建立连接后,我尝试将http标头发送到浏览器: server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server_socket.bind((IP, PORT)) server_socket.listen(10) print "Listening for connections on port %d" % PORT while True: client_socket, client_add
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.bind((IP, PORT))
server_socket.listen(10)
print "Listening for connections on port %d" % PORT
while True:
client_socket, client_address = server_socket.accept()
print 'New connection received'
handle_client(client_socket)
发送标题的我的代码:
data = get_file_data('index.html')
header = 'HTTP/1.1 200 OK\r\n Content-Type: text/html; charset=utf 8\r\n\r\n' + data
client_socket.sendall(header)
有什么问题吗?您必须发送
内容长度
和连接:关闭
标题
您可以使用
len(data)
作为案例中的内容长度。您必须在http标头中添加内容长度:
。您可以使用以下行代码:
data = get_file_data('index.html')
header = 'HTTP/1.1 200 OK\r\nContent-Length: %d\r\nContent-Type: text/html; charset=utf 8\r\n\r\n%s' % (len(data), data)
client_socket.sendall(header)
你告诉我问题是什么:)到目前为止,我告诉你缺少内容编码和/或内容长度。你是说charset=utf-8吗?此外,在内容类型标题之前还有额外的空间问题是,在建立连接后,浏览器中不会发生任何事情。我想查看从服务器发送的html页面。我尝试添加内容长度,但这不是问题。尝试添加
连接:关闭作为标题谢谢,现在有些东西工作了,但我没有正确地看到html页面的css和js部分,为什么?它工作了,但css代码不工作,你有办法吗?