我们正在做一个项目,其中涉及到编写一个客户端来调用客户将要实现的REST Web服务。
所说的Web服务将由客户根据我们将设计的规范进行开发。目的是创建一个将来可供多个客户使用的标准,而无需我们以任何方式修改客户。
现在,在我与这家公司合作的30年中,我们从未有过一个客户根据预定义的规范成功构建Web服务并没有改变需求的情况。即使在进行SOAP接口时(我们会向客户提供.wsdl),他们仍然永远无法正确实现服务器。
但是我们承诺,所以我正在尝试进行尽可能多的操作。
我们正在写一个客户。为了测试它是否有效,我们需要测试服务器的实现。我的意图是创建一个测试服务器,一个测试客户端以及我们的实际客户端,并为客户提供测试服务器和测试客户端,并告诉他们开发自己的服务器以供测试客户端使用。
那么,我需要的是一个易于安装和运行的客户测试Web服务器,以及一个也可以轻松安装和运行的测试客户端。
理想的情况是可以在命令行中运行每个exe,而不必运行安装程序。
我们曾经是.NET Framework商店,但是我们打算在明年左右迁移到.NET Core。
我当时的想法是,如果我们可以在.NET核心中构建测试服务器和客户端,那么它将为未来的客户提供更多运行它的选择。
因此,问题是,如何在.NET Core中创建一个简单的Web服务,以便可以从命令行运行它,而不必配置Web服务器,防火墙等?
这不是作为后台服务运行,不需要配置为与数据库对话,不需要在任何特定端口上运行,等等。它只是在指定端口上启动并侦听直到它关闭。
例如;
$ mytestserver --port 5432
$ mytestclient http://localhost:5432
想法?