Windows 10 IoT на RPi2 як невеликий сервер веб-API HTTP / REST


12

Наразі Windows 10 Core для IoT перебуває в Preview, і він доступний для використання 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

Для цього також є пакунок із нутами:

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

Відмова: Я власник і творець відпочинку


Це чудовий проект Tom. Я почав грати з подібною ідеєю, створюючи заняття для обробки різних видів запитів http, але ви та ваші учасники справді створили щось круте. Не можу чекати, щоб спробувати.
— Бен Брандт

Це ваш проект? Будь ласка, надайте відмову у відповіді на це. PS Не можете приймати MVC на IoT?
— Пьотр Кула

Справді мій проект, додав застереження. І ні, ви не можете розмістити MVC на IoT.
— Том Куйстен

Справді. MVC вимагає або IIS, або .NET Core, жоден з яких не підтримується (все ще) на Win IoT. Врешті-решт .NET Core буде підтримуватися.
— Джим Ярбро

@TomKuijsten Дякую за ваш внесок. Якщо я можу запитати, чи все ж ви запропонуєте мені скористатися вашою реалізацією? Це "актуально", тому що я бачу, що поточна тема є від 3 років тому. Якщо ні, чи маєте ви на увазі альтернативу?
— Тодоріс Коскінопулос

4

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


чи має цей пакунок нугів якийсь приклад чи як до нього пов'язана документація? Дякую!
— Роб С.

1
@RobS. документація легка, але вони мають приклади тут github.com/sensaura-public/iotweb/blob/… і тут github.com/sensaura-public/iotweb/blob/…, і я поєдную її з додатком Angular2 для чогось трохи більш істотне тут: github.com/AutomatedArchitecture/sirenofshame-uwp/blob/develop/…
— Lee Richardson

3

На Raspberry Pi 2. можна реалізувати веб-сервер з Windows 10 Core для IoT. Якщо ви отримаєте доступ до свого пристрою за адресою http: // назва пристрою / , ви дійсно побачите веб-сайт, який вже надається системою.

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

Як ви вже згадували ASP.NET: Я ще не натрапляв на будь-який зразок, але ви повинні це зробити, або з класичним власноруч розміщеним додатком ASP.NET 4, або ви можете спробувати його з ASP.NET 5 (він же "ASP.NET vNext").

В обох випадках спочатку слід створити програму Windows Universal App, яка розмістить веб-сервер. Тепер ви можете дотримуватися того самого підходу, який описаний у кількох підручниках, які демонструють, як реалізувати самостійно розміщений 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-сторінок через свою малину pi2 з встановленим Windows 10. на моєму пристрої немає сторінки за замовчуванням?
— Ендрю Сімпсон,

0

Зауважте, що зразок програми "App2App WebServer" використовує розетки для прослуховування з'єднання. Ви можете легко розширити код, щоб прочитати вміст і обробити вміст як JSON, якщо ви хочете зробити власний простий сервер Restful. У нього не буде всього механізму ASP.NET, але тоді вам потрібно просто.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.