Windows 10 IoT su RPi2 come un piccolo server API Web HTTP / REST


12

Attualmente Windows 10 Core per IoT è in anteprima ed è disponibile per utilizzare Visual Studio 2015 RC con il nuovo progetto Windows Universal e sviluppare alcune app.

Tuttavia, sono interessato a creare il mio ASP.NET WebAPI (REST / JSON) su Raspberry Pi 2 come host. È possibile ? Inoltre è possibile che RPi2 sia un piccolo server Web con pochi file .html?


Non è possibile aggiungere pacchetti OWIN a un'app universale in VS 2015

Risposte:


10

Se stai cercando un semplice servizio REST per un'app universale di Windows, dai un'occhiata a questo progetto github:

https://github.com/tomkuijsten/restup

C'è anche un pacchetto nuget per questo:

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

Disclaimer: sono il proprietario e il creatore di restup


Questo è un bellissimo progetto Tom. Avevo iniziato a giocare con un'idea simile, creando classi per gestire diversi tipi di richieste http, ma tu e i tuoi collaboratori avete davvero creato qualcosa di interessante. Non vedo l'ora di provarlo.
Ben Brandt,

Questo è il tuo progetto? Si prega di fornire una dichiarazione di non responsabilità in merito alla risposta. PS Non puoi ospitare MVC su IoT?
Piotr Kula,

In effetti il ​​mio progetto, ha aggiunto la dichiarazione di non responsabilità. E no, non puoi ospitare MVC su IoT.
Tom Kuijsten,

Infatti. MVC richiede IIS o .NET Core, nessuno dei quali è supportato (ancora) su Win IoT. Alla fine sarà supportato .NET Core.
Jim Yarbro,

@TomKuijsten Grazie per il tuo contributo. Se potessi chiedere, suggeriresti ancora di utilizzare la tua implementazione? È "aggiornato", perché vedo che il thread attuale è di 3 anni fa. In caso contrario, hai in mente un'alternativa?
Thodoris Koskinopoulos,

4

Dai un'occhiata anche a HTTP Embedded e WebSocket Server per UWP / .NET 4.5 https://www.nuget.org/packages/IotWeb/ (o su github )


questo pacchetto nuget ha qualche esempio o come la documentazione ad esso associata? Grazie!
Rob S.

1
@RobS. la documentazione è leggera, ma hanno esempi qui github.com/sensaura-public/iotweb/blob/… e qui github.com/sensaura-public/iotweb/blob/… e la sto combinando con un'app Angular2 per qualcosa a un po 'più sostanziale qui: github.com/AutomatedArchitecture/sirenofshame-uwp/blob/develop/…
Lee Richardson

3

È possibile implementare un server Web con Windows 10 Core per IoT su Raspberry Pi 2. Se si accede al dispositivo su http: // nome devic / , verrà effettivamente visualizzato un sito Web già fornito dal sistema.

Per implementare il tuo server web su Windows IoT, ci sono molte possibilità. Per Python o Node.js, ci sono già esempi disponibili sul progetto GitHub ufficiale:
https://github.com/ms-iot/samples

Come hai detto ASP.NET: non mi sono ancora imbattuto in nessun campione, ma dovresti essere in grado di farlo, sia con una classica applicazione ASP.NET 4 self-hosted che potresti provare con ASP.NET 5 (alias "ASP.NET vNext").

In entrambi i casi, è necessario creare prima un'app universale Windows, che ospiterà il server Web. Ora puoi seguire lo stesso approccio descritto in diversi tutorial che dimostrano come implementare un server ASP.NET self-hosted, ad esempio utilizzando un'applicazione console. Invece di un'applicazione console, stai utilizzando l'app universale di Windows qui, ma sostanzialmente non fa differenza.

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

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

Spero possa aiutare!


Grazie per le informazioni, sì, voglio menzionare l'app universale di Windows con ASP.NET 4 o 5 self-hosted, tuttavia non sono sicuro di ciò quando si utilizza l'app universale invece della semplice app console. L'uso del server Web OWIN in .net non è consentito per i progetti di Windows Universal App o solo per l'IoT.
Hrvoje Kusulja,

Ciao, sto cercando la stessa cosa ma non mi preoccupo usando OWIN. Vorrei solo server pagine HTML tramite il mio Raspberry Pi2 con Windows 10 installato. non c'è una pagina predefinita sul mio dispositivo?
Andrew Simpson,

0

Si noti che l'applicazione di esempio "App2App WebServer" utilizza i socket per ascoltare una connessione. È possibile estendere facilmente il codice per leggere il contenuto e trattare il contenuto come JSON se si desidera creare il proprio server Restful. Non avrà tutto il meccanismo ASP.NET ma poi vuoi semplice.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.