Python 我的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

在服务器和浏览器之间建立连接后,我尝试将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_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代码不工作,你有办法吗?