【发布时间】:2021-04-17 13:48:15
【问题描述】:
最近我与一些开发人员交谈,他们说他们从他们的前端(Web 应用程序)调用一个端点,该端点是一个 Web 套接字。他们所有的 REST 调用都通过这个连接。这个解决方案是用 Java 编写的。所以我开始想知道他们是怎么做到的。他们如何分派端点、什么是有效负载等,但在 Asp.NET Core 中。
我想知道这是否可能以及如何实现。
【问题讨论】:
标签: c# websocket asp.net-core-5.0
最近我与一些开发人员交谈,他们说他们从他们的前端(Web 应用程序)调用一个端点,该端点是一个 Web 套接字。他们所有的 REST 调用都通过这个连接。这个解决方案是用 Java 编写的。所以我开始想知道他们是怎么做到的。他们如何分派端点、什么是有效负载等,但在 Asp.NET Core 中。
我想知道这是否可能以及如何实现。
【问题讨论】:
标签: c# websocket asp.net-core-5.0
我看到这是一个非常有趣的话题。我发现这很有用-https://developer.okta.com/blog/2019/11/21/csharp-websockets-tutorial
【讨论】:
您可以使用 SignalR 在 dotnet 核心中执行此操作:https://docs.microsoft.com/en-us/aspnet/core/signalr/introduction?view=aspnetcore-5.0
【讨论】:
我认为您正在混合两种不同的技术。
REST 端点属于 WebServices,是一个 url,指向代码中的一个或多个方法,这些方法可以接受参数并以 XML/JSON 格式返回结果。
然后您可以从前端获取此 url 并读取响应。
Google Maps API 是 REST 网络服务的一个示例。
相反,Websocket 是一个连续连接,并且作为普通套接字工作,但在客户端上运行的网页和另一台机器(即服务器)上的另一个服务器应用程序之间运行。 当您需要具有连续数据交换的开放隧道时使用它:聊天、视频和音频流、多人游戏等等。
你不能对 websocket 端点进行 REST 调用,如果你想使用 websocket,你必须用 C# 编写一个服务器(我使用 .net 核心)。一个控制台应用程序。
我不确定您到底在寻找什么。如果你想从 websockets 开始,我就是从这里开始的:
Writing websocket server Writing a websocket server in C#
对于网络服务:
【讨论】: