Windows 10 IoT บน RPi2 เป็น HTTP / REST Web API Server ขนาดเล็ก


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

นอกจากนี้ยังมีแพ็คเกจ nuget สำหรับมัน:

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

คำเตือน:ฉันเป็นเจ้าของและผู้สร้าง restup


นี่เป็นโครงการทอมที่ดูดี ฉันเริ่มเล่นด้วยแนวคิดที่คล้ายกันสร้างคลาสเพื่อจัดการกับคำขอ HTTP ประเภทต่างๆ แต่คุณและผู้มีส่วนร่วมของคุณได้สร้างสิ่งดีๆ อดใจรอไม่ไหวที่จะลองดู
— Ben Brandt

นี่เป็นโครงการของคุณหรือไม่ โปรดระบุข้อจำกัดความรับผิดชอบในคำตอบของคุณเกี่ยวกับเรื่องนั้น ป.ล. คุณไม่สามารถโฮสต์ MVC บน IoT ได้หรือไม่
— Piotr Kula

อันที่จริงโครงการของฉันปฏิเสธความรับผิดชอบเพิ่ม และไม่คุณไม่สามารถโฮสต์ MVC บน IoT ได้
— Tom Kuijsten

จริง MVC ต้องการ IIS หรือ. NET Core ซึ่งไม่รองรับ (ยัง) บน Win IoT ในที่สุด. NET Core จะได้รับการสนับสนุน
— Jim Yarbro

@TomKuijsten ขอขอบคุณสำหรับการสนับสนุนของคุณ ถ้าฉันอาจถามคุณจะยังแนะนำให้ฉันใช้การติดตั้งของคุณ? มันคือ "ทันสมัย" สาเหตุที่ฉันเห็นเธรดปัจจุบันมาจาก 3 ปีที่ผ่านมา ถ้าไม่มีคุณมีทางเลือกอื่นในใจหรือไม่?
— Thodoris Koskinopoulos

4

นอกจากนี้ตรวจสอบ Embedded HTTP และ WebSocket Server สำหรับ UWP / .NET 4.5 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/AutomatedAr Architecture/sirenofshame
— Lee Richardson

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 (aka "ASP.NET vNext")

ในทั้งสองกรณีคุณควรสร้าง Windows Universal App ก่อนซึ่งจะโฮสต์เว็บเซิร์ฟเวอร์ ตอนนี้คุณสามารถทำตามวิธีการเดียวกับที่อธิบายไว้ในหลายบทช่วยสอนที่แสดงวิธีการใช้เซิร์ฟเวอร์ 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/

หวังว่าจะช่วย!


ขอบคุณสำหรับข้อมูลใช่ฉันต้องการพูดถึง Windows Universal App ด้วย ASP.NET 4 หรือ 5 ที่โฮสต์โดยตัวเอง แต่ไม่แน่ใจเกี่ยวกับเรื่องนี้เมื่อใช้ Universal App แทนแอพคอนโซลแบบธรรมดา การใช้เว็บเซิร์ฟเวอร์ OWIN ใน. net ไม่ได้รับอนุญาตสำหรับโครงการ Windows Universal App หรือเฉพาะสำหรับ IoT ..
— Hrvoje Kusulja

สวัสดีฉันอยู่หลังสิ่งเดียวกัน แต่ไม่ได้ใช้ OWIN เลย ฉันต้องการไปยังเซิร์ฟเวอร์หน้า html ผ่านทาง raspberry pi2 ที่ติดตั้ง windows 10 ไม่มีหน้าเริ่มต้นไปยังอุปกรณ์ของฉัน?
— Andrew Simpson

0

โปรดทราบว่าแอปพลิเคชันตัวอย่าง "App2App WebServer" ใช้ซ็อกเก็ตเพื่อฟังการเชื่อมต่อ คุณสามารถขยายรหัสเพื่ออ่านเนื้อหาและประมวลผลเนื้อหาเป็น JSON ได้อย่างง่ายดายหากคุณต้องการทำเซิร์ฟเวอร์ Restful ที่เรียบง่ายของคุณเอง มันไม่มีกลไก ASP.NET ทั้งหมด แต่คุณต้องการแบบง่าย ๆ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.