RPi2上的Windows 10 IoT作为小型HTTP / REST Web API服务器


12

当前,适用于IoT的Windows 10 Core处于预览状态,可以将Visual Studio 2015 RC与新的Windows Universal项目结合使用并开发一些应用程序。

但是,我对在Raspberry Pi 2上作为主机制作自己的ASP.NET WebAPI(REST / JSON)感兴趣。可能吗 ?RPi2是否有可能成为仅包含很少的.html文件的小型Web服务器?


您无法将OWIN软件包添加到VS 2015中的通用应用程序

Answers:


10

如果您正在寻找适用于Windows通用应用程序的简单REST服务,请查看以下github项目:

https://github.com/tomkuijsten/restup

还有一个nuget包:

https://www.nuget.org/packages/Restup/

免责声明:我是restup的所有者和创建者


汤姆,这是一个很棒的项目。我开始玩类似的想法,创建了一些类来处理不同种类的http请求,但是您和您的贡献者确实创造了一些很棒的东西。等不及要尝试了。
本·布兰特

这是您的项目吗?请就您的回答提供免责声明。PS Cant您在物联网上托管MVC吗?
Piotr Kula

的确,免责声明补充说我的项目。不,您不能在物联网上托管MVC。
Tom Kuijsten

确实。MVC需要IIS或.NET Core,但Win IoT上均不支持IIS或.NET Core。最终将支持.NET Core。
吉姆·雅布

@TomKuijsten谢谢您的贡献。如果我可能要问,您还会建议我使用您的实现吗?是“最新的”吗,因为我看到当前线程是3年前的。如果没有,您是否有其他选择?
Thodoris Koskinopoulos

4

另请查看适用于UWP / .NET 4.5的嵌入式HTTP和WebSocket服务器 https://www.nuget.org/packages/IotWeb/(或在github上


这个nuget包是否有任何示例或与之相关的文档?谢谢!
Rob S.

1
@RobS。文档虽然很轻巧,但是这里有示例github.com/sensaura-public/iotweb/blob/…和这里github.com/sensaura-public/iotweb/blob/…,我将它与Angular2应用结合起来更重要的是:github.com/AutomatedArchitecture/sirenofshame-uwp/blob/develop/…–
李·理查森

3

可以在Raspberry Pi 2上使用Windows 10 Core for IoT来实现Web服务器。如果您在http:// devicename /上访问设备,则实际上会看到系统已经提供的网站。

为了在Windows IoT上实现自己的Web服务器,有很多可能性。对于Python或Node.js,官方GitHub项目上已经提供了示例:https :
//github.com/ms-iot/samples

正如您提到的ASP.NET:我还没有偶然发现任何示例,但是您应该可以使用经典的自托管ASP.NET 4应用程序进行操作,也可以尝试使用ASP.NET 5进行操作。 (又名“ ASP.NET vNext”)。

在这两种情况下,您都应该首先创建一个Windows Universal App,它将托管Web服务器。现在,您可以采用与一些教程中描述的方法相同的方法,这些教程演示了如何例如使用控制台应用程序来实现自托管ASP.NET服务器。您不是在使用控制台应用程序,而是在此处使用Windows Universal App,但这基本上没有什么区别。

ASP.NET 4示例:http :
//www.asp.net/web-api/overview/hosting-aspnet-web-api/use-owin-to-self-host-web-api

ASP.NET 5示例:http
//www.c-sharpcorner.com/UploadFile/7ca517/Asp-Net-5-conaole-application-with-visual-studio-2015/

希望有帮助!


谢谢您提供的信息,是的,我想提到带有ASP.NET 4或5自托管的Windows Universal App,但是在使用Universal App而不是简单的控制台应用程序时对此不确定。在.NET中使用OWIN Web服务器是不允许用于Windows通用应用程序的项目,或只为物联网..
赫尔沃耶Kusulja

嗨,我也有同样的想法,但是我对使用OWIN并不感到困扰。我只想通过安装了Windows 10的raspberry pi2服务器html页面。我的设备没有默认页面吗?
安德鲁·辛普森

0

请注意,“ App2App WebServer”示例应用程序使用套接字来侦听连接。如果要创建自己的简单Restful服务器,则可以轻松扩展代码以读取内容并将内容作为JSON处理。它没有所有的ASP.NET机制,但您想简单一点。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.