开始使用 C# 项目接收 http 消息

Getting started with a C# project to receive http messages

提问人:Kaloschke 提问时间:1/27/2021 更新时间:1/27/2021 访问量:41

问:

我是 C# 的新手,想在 Windows 10 上创建一个在后台运行的小型应用程序,偶尔会从本地网络上的 PHP 网站接收和处理消息(ON/OFF 或 1/0 或 JSON 或类似的东西)。

什么是合适的方法? 我是否需要创建自己的事件处理程序?

C# HTTP Python 请求

评论


答:

0赞 Hano Johannes Rossouw 1/27/2021 #1

我建议在 .NET 框架中查看 .NET WebAPI,对于 .NET core,您可以考虑做一个普通的 MVC 应用程序,在 .NET core MVC 和 WebAPI 中合并为一个。然后,应用程序中的 MVC 控制器充当您可以从 PHP 网站调用的 Restful 端点,只需在端点上注明您需要定义您期望接收的合约或对象,这比接受任何东西更安全。然后,在 MVC 应用程序中,您可以执行任何需要操作,无论是排队、将数据发送到其他位置还是进行一些处理,然后保存信息。

https://learn.microsoft.com/en-us/aspnet/core/tutorials/first-web-api?view=aspnetcore-5.0&tabs=visual-studio

使用 PHP ASP.NET 调用 Web Api 方法

评论

0赞 Hano Johannes Rossouw 1/27/2021
WebAPI 或 MVC 应该可使用 IIS 作为 Web 服务器进行托管,或者通过自托管选项进行托管,然后可以将其作为控制台应用运行,或者将其集成到 Windows 服务中,然后使用 kestrel 处理其 Web 请求
0赞 Kaloschke 1/27/2021
谢谢你的帮助。我应该指定该应用程序是一个桌面应用程序,在收到消息时移动到前台。
0赞 Hano Johannes Rossouw 1/27/2021
您仍然可以使用 webapi 在后台托管您的端点,但可以使用事件处理程序将 api 之间的信息转发到应用程序,或者如果您希望应用程序在命中 api 时执行某些操作,webapi 可以使用 owin 托管,可以在桌面应用程序的启动中启动。并在桌面应用程序关闭时关闭。
0赞 Kaloschke 1/28/2021
非常感谢您的建议