在使用 Django Channels 模块实现 WebSocket 请求时,可以通过 self.scope 来获取请求的头信息。下面是一个示例:
from channels.generic.websocket import AsyncWebsocketConsumer
class MyConsumer(AsyncWebsocketConsumer):
async def connect(self):
# 获取 WebSocket 请求的头信息
headers = self.scope['headers']
for header_key, header_value in headers:
print(f"{header_key}: {header_value.decode()}")
# 连接处理逻辑...
在上述示例中,我们使用 self.scope['headers'] 来访问 WebSocket 请求的头信息列表。然后可以遍历头信息列表,并将其打印出来或进行其他自定义处理。
请注意,这里的 headers 是一个列表,每个元素都是一个包含键值对(key-value)元组的字节字符串。如果需要将字节字符串转换为普通字符串,请使用 .decode() 方法。
内容由零声教学AI助手提供,问题来源于学员提问




