c#,鉴于具有REST API的Web应用,并想添加每个REST API可以与之交互的Web套接字,在哪里定义ClientManager进行全局访问?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#,鉴于具有REST API的Web应用,并想添加每个REST API可以与之交互的Web套接字,在哪里定义ClientManager进行全局访问?相关的知识,希望对你有一定的参考价值。

这不是关于通过网络套接字访问REST API的问题。

我已经存在一个REST API,我正在寻找添加Websocket,以类似于Google云消息传递/ Firebase的样式发送“ eventId”。然后,客户端可以使用该eventId访问所需的API。

问题是我在哪里定义“ ClientManager”?

当前,我在'Configure'中实例化ClientManager,下面将接受套接字并回传其数据作为测试(如此处所述https://docs.microsoft.com/en-us/aspnet/core/fundamentals/websockets?view=aspnetcore-3.1)。我不确定如何从Web应用程序的其他位置访问此实例。似乎应该全局定义它。我已经找到了有关services.AddSingleton的一些信息,但是无法使其正常工作。

答案

答案可以在这里找到:ASP.NET Core initialize singleton after configuring DI

您在ConfigureServices中声明单例,然后将其作为参数传递给Configure。上面的链接提供了其他几种具有相同结果的技术。

以上是关于c#,鉴于具有REST API的Web应用,并想添加每个REST API可以与之交互的Web套接字,在哪里定义ClientManager进行全局访问?的主要内容,如果未能解决你的问题,请参考以下文章

Rest Web 服务:具有令牌安全性的匿名和经过身份验证的用户

如何使用具有相同控制器的 Laravel 制作网站和 API REST?

基于Vue.js 与 WordPress Rest API 构建单页应用

持续监视文件夹以将新创建 的文件从该文件夹上载到C#中的REST API

使用 Express 和 NodeJS 构建 REST API 的最佳实践

Web 应用程序和移动应用程序的 REST API 身份验证