Windows 10 IoT trên RPi2 dưới dạng Máy chủ API HTTP / REST nhỏ


12

Hiện tại Windows 10 Core cho IoT đang trong Bản xem trước và có sẵn để sử dụng Visual Studio 2015 RC với dự án Windows Universal mới và phát triển một số ứng dụng.

Tuy nhiên, tôi quan tâm đến việc tạo ASP.NET WebAPI (REST / JSON) của riêng tôi trên Raspberry Pi 2 làm máy chủ. Có thể không? Ngoài ra, RPi2 có thể là một máy chủ web nhỏ với một vài tệp .html không?


Bạn không thể thêm các gói OWIN vào một ứng dụng phổ quát trong VS 2015

Câu trả lời:


10

Nếu bạn đang tìm kiếm một dịch vụ REST đơn giản cho một ứng dụng phổ quát windows, hãy xem dự án github này:

https://github.com/tomkuijsten/restup

Ngoài ra còn có một gói nuget cho nó:

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

Tuyên bố miễn trừ trách nhiệm: Tôi là chủ sở hữu và người tạo ra restup


Đây là một dự án tuyệt vời Tom. Tôi đã bắt đầu chơi với một ý tưởng tương tự, tạo các lớp để xử lý các loại yêu cầu http khác nhau, nhưng bạn và những người đóng góp của bạn đã thực sự xây dựng một thứ gì đó tuyệt vời. Không thể chờ đợi để thử nó.
Ben Brandt

Đây có phải là dự án của bạn? Vui lòng cung cấp từ chối trách nhiệm về câu trả lời của bạn về điều đó. PS bạn có thể lưu trữ MVC trên IoT không?
Piotr Kula

Thực sự dự án của tôi, từ chối trách nhiệm thêm. Và không, bạn không thể lưu trữ MVC trên IoT.
Tom Kuijsten

Thật. MVC yêu cầu IIS hoặc .NET Core, cả hai đều không được hỗ trợ (chưa) trên Win IoT. Cuối cùng, .NET Core sẽ được hỗ trợ.
Jim Yarbro

@TomKuijsten Cảm ơn bạn đã đóng góp. Nếu tôi có thể hỏi, bạn vẫn đề nghị tôi sử dụng triển khai của bạn chứ? Có phải là "cập nhật" không, vì tôi thấy chủ đề hiện tại là từ 3 năm trước. Nếu không, bạn có một sự thay thế trong tâm trí?
Thodoris Koskinopoulos

4

Ngoài ra, hãy kiểm tra Máy chủ HTTP và WebSocket nhúng cho UWP / .NET 4.5 https://www.nuget.org/packages/IotWeb/ (hoặc trên github )


gói nuget này có bất kỳ ví dụ hoặc làm thế nào để tài liệu liên quan đến nó? Cảm ơn!
Rob S.

1
@RobS. tài liệu hướng dẫn là ánh sáng, nhưng họ có ví dụ ở đây github.com/sensaura-public/iotweb/blob/... và đây github.com/sensaura-public/iotweb/blob/... và tôi đang kết hợp nó với một ứng dụng Angular2 cho một cái gì đó một nhiều hơn nữa đáng kể ở đây: github.com/AutomatedArch architecture / sirenofshame
Lee Richardson

3

Có thể triển khai máy chủ web với Windows 10 Core cho IoT trên Raspberry Pi 2. Nếu bạn truy cập thiết bị của mình trên http: // devicename / , bạn sẽ thực sự thấy một trang web đã được hệ thống cung cấp.

Để triển khai máy chủ web của riêng bạn trên Windows IoT, có rất nhiều khả năng. Đối với Python hoặc Node.js, đã có sẵn các mẫu trên dự án GitHub chính thức:
https://github.com/ms-iot/samples

Như bạn đã đề cập ASP.NET: Tôi chưa vấp phải bất kỳ mẫu nào, nhưng bạn sẽ có thể làm điều đó, với ứng dụng ASP.NET 4 tự lưu trữ cổ điển hoặc bạn có thể dùng thử với ASP.NET 5 (còn gọi là "ASP.NET vNext").

Trong cả hai trường hợp, bạn nên tạo Ứng dụng Windows Universal trước, ứng dụng này sẽ lưu trữ máy chủ web. Bây giờ, bạn có thể làm theo cách tiếp cận tương tự như được mô tả trong một số hướng dẫn ngoài kia để giải thích cách triển khai máy chủ ASP.NET tự lưu trữ, ví dụ: sử dụng ứng dụng bảng điều khiển. Thay vì một ứng dụng bảng điều khiển bạn đang sử dụng Ứng dụng Windows Universal ở đây, nhưng về cơ bản, điều đó không tạo ra sự khác biệt.

Mẫu ASP.NET 4:
http://www.asp.net/web-api/overview/hosting-aspnet-web-api/use-owin-to-elf-host-web-api

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

Mong rằng sẽ giúp!


Cảm ơn bạn đã thông tin, vâng, tôi muốn đề cập đến Windows Universal App với ASP.NET 4 hoặc 5 tự lưu trữ, tuy nhiên không chắc chắn về điều này khi sử dụng Universal App thay vì ứng dụng bảng điều khiển đơn giản. Không được phép sử dụng máy chủ web OWIN trong .net cho các dự án Windows Universal App hoặc chỉ dành cho IoT ..
Hrvoje Kusulja

Xin chào, tôi sau điều tương tự nhưng không bị làm phiền bằng cách sử dụng OWIN. Tôi chỉ muốn phục vụ các trang html thông qua raspberry pi2 với windows 10 được cài đặt. Không có trang mặc định cho thiết bị của tôi?
Andrew Simpson

0

Lưu ý rằng ứng dụng mẫu "App2App WebServer" sử dụng các socket để lắng nghe kết nối. Bạn có thể dễ dàng mở rộng mã để đọc nội dung và xử lý nội dung dưới dạng JSON nếu bạn muốn làm máy chủ Restful đơn giản của riêng mình. Nó sẽ không có tất cả các cơ chế ASP.NET nhưng sau đó bạn muốn đơn giản.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.