Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core Asp.Net核心应用程序WebSocket(客户端/服务器)_Asp.net Core_Websocket - Fatal编程技术网

Asp.net core Asp.Net核心应用程序WebSocket(客户端/服务器)

Asp.net core Asp.Net核心应用程序WebSocket(客户端/服务器),asp.net-core,websocket,Asp.net Core,Websocket,你好。 我计划在两个ASP.NET核心应用程序之间通过HTTP(80443)进行WebSocket通信。 附录1-WebSocket服务器(互联网)。 附录2-WebSocket客户端(本地网络,通过HTTP代理访问互联网)。 应用程序1无法与应用程序2建立HTTP通信,因为应用程序2位于本地网络上,尽管命名应用程序1必须向应用程序2发出HTTP请求以从本地网络获取一些信息。 出于这个原因,我想使用web套接字:应用程序2通过HTTP代理与应用程序1通信,建立持久连接。应用程序1现在可以将请求(

你好。 我计划在两个ASP.NET核心应用程序之间通过HTTP(80443)进行WebSocket通信。 附录1-WebSocket服务器(互联网)。 附录2-WebSocket客户端(本地网络,通过HTTP代理访问互联网)。 应用程序1无法与应用程序2建立HTTP通信,因为应用程序2位于本地网络上,尽管命名应用程序1必须向应用程序2发出HTTP请求以从本地网络获取一些信息。 出于这个原因,我想使用web套接字:应用程序2通过HTTP代理与应用程序1通信,建立持久连接。应用程序1现在可以将请求(其API)作为文本消息发送到应用程序。 在这种情况下,只会始终使用一个套接字(webSocket)。 用户通过HTTP从浏览器向应用程序1发出请求,如果他们需要本地网络上的一些信息,应用程序1(WebSocket服务器)将通过WebSocket向应用程序2(WebSocket客户端)发送消息。可以通过同一套接字同时发送多个请求。 问题:

  • 是否需要输入诸如WebSocketRequestId(例如,生成GUID)之类的附加标识(毕竟,接收方将接受一行中的所有内容)
  • 通过web套接字发送的消息(请求或响应)可能不适合缓冲区(例如,4 KB),因此需要部分读取数据。据我所知,如果同时发送数据,则流可能包含1个请求的数据开始、2个请求的中间、1个请求的继续、3个请求的开始,等等。?那些每次发送消息时,都需要将其拆分为WebSocketRequestId:message 4096-WebSocketRequestId.ToString()格式的部分。长度

  • 还是所有不必要的操作?

    您应该查看
    signar
    ,它在幕后处理了许多复杂问题。谢谢,使用signar解决了所有问题。