我正在开发一个应用程序,在这个应用程序中,我使用套接字在服务器应用程序和客户端应用程序(web和桌面都是)之间进行通信。
我的服务器应用程序不断侦听客户端应用程序的请求,并随时接受请求。
服务器代码:
TcpListener listener = new TcpListener(IPAddress.Parse(ipAddStr), portNum);
listener.Start();
while (listen)
{
TcpClient handler = listener.AcceptTcpClient();
// doing some stuff
// for e
我编写了一个WebSocket服务器,它只处理作为GET请求的升级请求。如果出现带有所需标头的POST或任何其他类型的请求,则由HTTP服务器处理。
在中,没有明确说明WebSocket升级请求应该是GET请求。如果升级请求不是GET请求,那么服务器是否应该将其作为WebSocket升级请求来处理,是将其传递给HTTP来处理呢,还是应该使用类似于400 Bad Request的状态代码来响应?
这是否是服务器决定不处理非GET请求的方法的设计决策?
我用JavaScript创建了一个WebSocket客户端
if ("WebSocket" in window) {
ws = new WebSocket(url);
ws.binaryType = "arraybuffer";
} else if ("MozWebSocket" in window) {
ws = new MozWebSocket(url);
ws.binaryType = "arraybuffer";
}
和WebSocket服务器应用