如何获取Sec-WebSocket-Key for WebSocket连接请求? [英] How to get the Sec-WebSocket-Key for WebSocket connection request?
问题描述
我是WebSocket的新手。但我需要创建一个 WebSocket连接。我需要发送一个请求标头S ec-WebSocket-Key。
我在google上搜索了这个。但我很困惑。
从哪里计算出来?或者我应该从哪里得到它?
谢谢。
你好PM16 ,
感谢您发布此处。
根据您的描述,您希望获得用于WebSocket连接的Sec-WebSocket-Key。 / p>
我制作一个简单的代码,你可以看看。
客户代码:
static void Main(string [] args)
{
using(var ws = new WebSocket(" ws:// localhost:9998 / service"))
{
ws.OnMessage + =(发送者,e)=>
Console.WriteLine(" Laputa说:" + e.Data);
ws.Connect();
Console.ReadKey(true);
}
}我在这里使用了WebScoket
最好的问候,
杰克
Hi,
I am new to WebSocket. But i am in need to create a WebSocket connection. I need to send a request header Sec-WebSocket-Key. I searched over google about this. but i got confused.
where to calculate this from ? or where should i get it from ?
Thanks.
Hi PM16,
Thank you for posting here.
Based on your description, you want to get the Sec-WebSocket-Key for WebSocket connection.
I make a simple code, you could have a look.
Client Code:
static void Main(string[] args) { using (var ws = new WebSocket("ws://localhost:9998/service")) { ws.OnMessage += (sender, e) => Console.WriteLine("Laputa says: " + e.Data); ws.Connect(); Console.ReadKey(true); } }I used WebScoket from this link.
Server code:
static void Main(string[] args) { TcpListener server = new TcpListener(IPAddress.Parse("127.0.0.1"), 9998); server.Start(); var client = server.AcceptTcpClient(); var stream = client.GetStream(); while (true) { var buffer = new byte[1024]; // wait for data to be received var bytesRead = stream.Read(buffer, 0, buffer.Length); var r = System.Text.Encoding.UTF8.GetString(buffer); foreach (var item in r.Split('\n')) { if(item.Contains("Sec-WebSocket-Key")) { Console.WriteLine(item); string m = item.Split(':')[1].Trim(); Console.WriteLine(m); } } } }Result:
Best Regards,
Jack
这篇关于如何获取Sec-WebSocket-Key for WebSocket连接请求?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!