python实现websocket_基于Python实现WebSocket握手过程

import socket

import base64

import hashlib

def get_headers(data):

“””

将请求头格式化成字典

:param data:

:return:

“””

header_dict = {}

data = str(data, encoding=’utf-8′)

header, body = data.split(‘\r\n\r\n’, 1)

header_list = header.split(‘\r\n’)

for i in range(0, len(header_list)):

if i == 0:

if len(header_list[i].split(‘ ‘)) == 3:

header_dict[‘method’], header_dict[‘url’], header_dict[‘protocol’] = header_list[i].split(‘ ‘)

else:

k, v = header_list[i].split(‘:’, 1)

header_dict[k] = v.strip()

return header_dict

def send_msg(conn, msg_bytes):

import struct

token = b”\x81″

length = len(msg_bytes)

if length < 126:

token += struct.pack(“B”, length)

elif length &

你可能感兴趣的:(python实现websocket_基于Python实现WebSocket握手过程)