Windows 10 IoT на RPi2 в качестве небольшого HTTP / REST Web API-сервера

12

В настоящее время Windows 10 Core для IoT находится в режиме предварительного просмотра, и есть возможность использовать Visual Studio 2015 RC с новым проектом Windows Universal и разрабатывать некоторые приложения.

Однако я заинтересован в создании собственного ASP.NET WebAPI (REST / JSON) на Raspberry Pi 2 в качестве хоста. Является ли это возможным ? Также возможно ли, чтобы RPi2 был небольшим веб-сервером с несколькими файлами .html вообще?

Хрвое Кусуля
источник
Вы не можете добавлять пакеты OWIN в универсальное приложение в VS 2015

Ответы:

10

Если вы ищете простой REST-сервис для универсального приложения для Windows, взгляните на этот проект github:

https://github.com/tomkuijsten/restup

Для этого также есть пакет nuget:

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

Отказ от ответственности: я владелец и создатель restup

Том Куйстен
источник
Это великолепно выглядящий проект Том. Я начал играть с похожей идеей, создавая классы для обработки различных http-запросов, но вы и ваши участники действительно создали что-то классное. Не могу дождаться, чтобы попробовать это.
Бен Брандт
Это твой проект? Пожалуйста, предоставьте заявление об отказе от ответа. PS Не можете ли вы разместить MVC на IoT?
Петр Кула
Действительно, мой проект, добавил отказ от ответственности. И нет, вы не можете разместить MVC на IoT.
Том Куйстен
В самом деле. MVC требует либо IIS, либо .NET Core, ни один из которых не поддерживается (пока) в Win IoT. В конце концов .NET Core будет поддерживаться, хотя.
Джим Ярбро
@ TomKuijsten Спасибо за ваш вклад. Если я могу спросить, вы все еще предлагаете мне использовать вашу реализацию? Это "в курсе", потому что я вижу текущую тему от 3 лет назад. Если нет, то имеете ли вы в виду альтернативу?
Thodoris Koskinopoulos
4

Также проверьте встроенный HTTP и WebSocket Server для UWP / .NET 4.5 https://www.nuget.org/packages/IotWeb/ (или на github )

Ли Ричардсон
источник
есть ли в этом пакете nuget какой-либо пример или как с ним связана документация? Благодарность!
Роб С.
1
@RobS. документация проста , но у них есть примеры здесь github.com/sensaura-public/iotweb/blob/… а здесь github.com/sensaura-public/iotweb/blob/… и я объединяю это с приложением Angular2 для чего-то чуть более содержательно здесь: github.com/AutomatedArchitecture/sirenofshame-uwp/blob/develop/…
Ли Ричардсон
3

Можно реализовать веб-сервер с Windows 10 Core для IoT на Raspberry Pi 2. Если вы получите доступ к своему устройству по адресу http: // devicename / , вы фактически увидите веб-сайт, который уже предоставлен системой.

Для реализации собственного веб-сервера в Windows IoT существует множество возможностей. Для Python или Node.js уже есть примеры, доступные на официальном проекте GitHub:
https://github.com/ms-iot/samples

Как вы упомянули в ASP.NET: я еще не сталкивался ни с одним образцом, но вы должны быть в состоянии сделать это либо с помощью классического приложения ASP.NET 4 с собственным размещением, либо вы можете попробовать его в ASP.NET 5. (он же ASP.NET vNext).

В обоих случаях сначала необходимо создать универсальное приложение Windows, в котором будет размещен веб-сервер. Теперь вы можете следовать тому же подходу, который описан в нескольких руководствах, демонстрирующих, как реализовать сервер ASP.NET с собственным размещением, например, с помощью консольного приложения. Вместо консольного приложения вы используете здесь универсальное приложение Windows, но это не имеет значения.

Пример 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/

Надеюсь, это поможет!

Даниэль Лемке
источник
Спасибо за информацию, да, я хочу упомянуть Windows Universal App с ASP.NET 4 или 5 самостоятельно, но не уверен в этом при использовании Universal App вместо простого консольного приложения. Использование веб-сервера OWIN в .net не разрешено для проектов Windows Universal App или только для IoT.
Хрвое Кусуля,
Привет, я после того же, но не беспокоюсь об использовании OWIN. Я просто хотел бы сервер HTML-страниц через мой Raspberry Pi2 с установленной Windows 10. нет страницы по умолчанию для моего устройства?
Эндрю Симпсон
0

Обратите внимание, что пример приложения «App2App WebServer» использует сокеты для прослушивания соединения. Вы можете легко расширить код для чтения содержимого и обрабатывать его как JSON, если вы хотите создать свой собственный простой сервер Restful. У него не будет всего механизма ASP.NET, но тогда вы захотите просто.

Боб Франкстон
источник