当前位置: 首页 > news >正文

PicoServer 跨平台 Web 架构实战系列 (一) MAUI 中嵌入 PicoServer 入门

一、技术简介

ASP.NET Core / .NET MAUI

image

.NET MAUI(Multi-platform App UI) 是微软推出的跨平台应用开发框架,基于 .NET 生态构建,支持使用 C# + XAML 开发:

  • Windows
  • Android
  • iOS
  • macOS

它的特点是:

  • ✅ 单一项目结构,多平台编译
  • ✅ 共享 UI 与业务代码
  • ✅ 深度集成 .NET 生态(依赖注入、日志、配置等)
  • ✅ 可与 Blazor、ASP.NET Core 无缝整合

官网:
https://dotnet.microsoft.com/en-us/apps/maui


PicoServer

image

PicoServer 是一个基于 .NET 的轻量级 Web 服务器组件,适合嵌入到桌面或移动应用中,用于快速搭建本地 HTTP 服务。

特点包括:

  • ✅ 轻量级嵌入式 Web 服务器
  • ✅ 基于 HttpListener
  • ✅ 支持路由映射
  • ✅ 适合本地 API、设备通信、调试接口等场景

官网:
https://picoserver.cn


二、在 MAUI 中嵌入 PicoServer 实战示例

配套源码 https://github.com/densen2014/MauiPicoAdmin

下面演示如何在 MAUI 应用中嵌入 PicoServer,并运行一个本地 HTTP 服务。


1️⃣ 建立 MAUI 工程(包含示例页)

创建一个标准的 MAUI 项目(带默认示例页面即可)。

可使用 Visual Studio 新建 “.NET MAUI App” 项目

示例页面如下:

image


2️⃣ 安装 PicoServer 包

通过 NuGet 安装 PicoServer。

操作步骤:

  • 右键项目
  • 管理 NuGet 包
  • 搜索 PicoServer
  • 安装

image


3️⃣ 编辑 MauiProgram.cs

我们将 PicoServer 嵌入到应用启动流程中。

在文件末尾加入以下代码:

public class PicoAdmin
{private readonly WebAPIServer MyAPI = new WebAPIServer(); // 实例化PicoServerpublic PicoAdmin(){MyAPI.AddRoute("/", Hello); // 添加根路由映射MyAPI.StartServer();        // 启动服务器}// 根路由映射的方法private async Task Hello(HttpListenerRequest request, HttpListenerResponse response){await response.WriteAsync("Hello PicoServer");}
}

然后在 var builder = MauiApp.CreateBuilder(); 之前加入一行:

var picoAdmin = new PicoAdmin(); // 实例化 PicoAdmin 以启动 PicoServer

完整逻辑说明:

  • 应用启动时
  • 实例化 PicoAdmin
  • 内部创建 WebAPIServer
  • 添加根路由 /
  • 启动 HTTP 服务

4️⃣ 运行测试

先测试 Windows 平台

运行项目后,在浏览器访问:

http://127.0.0.1:8090

如果页面显示:

Hello PicoServer

说明:

✅ MAUI 应用启动成功
✅ PicoServer 已成功嵌入
✅ 本地 HTTP 服务运行正常


三、原理说明

整个流程本质上是:

MAUI 应用启动↓
实例化 PicoAdmin↓
创建 HttpListener↓
监听 127.0.0.1:8090↓
处理 HTTP 请求

这种模式非常适合:

  • 本地设备 API 服务
  • 嵌入式后台接口
  • 局域网设备通信
  • 调试接口
  • 本地 Web 控制台

四、总结

通过本示例,我们实现了:

  • 在 MAUI 中嵌入轻量级 HTTP 服务器
  • 启动本地端口服务
  • 添加简单路由
  • 浏览器访问测试

这种结构可以扩展为:

  • REST API
  • JSON 接口
  • 本地控制台页面
  • 与 WebView 结合形成 Hybrid App

还可以继续扩展成:

  • 支持 POST / JSON
  • 添加多路由
  • 添加静态文件服务
  • 或做成设备后台服务框架
http://www.jsqmd.com/news/438012/

相关文章:

  • 2026马赛克瓷砖品牌排行有哪些?实力品牌推荐 - 品牌排行榜
  • 2026年马赛克瓷砖厨房用哪种好?推荐品牌参考 - 品牌排行榜
  • tiktok 网页端算法分析
  • 2026年机票比价后在哪个渠道下单更有保障? - 品牌排行榜
  • 2026马赛克瓷砖十大品牌推荐:品质与设计的匠心之选 - 品牌排行榜
  • 2026哪个平台买机票便宜?实用购票攻略及平台推荐 - 品牌排行榜
  • 2026哪个平台有特价机票?实用功能助你轻松省钱 - 品牌排行榜
  • 2026哪个平台有直飞优惠?高性价比出行选择参考 - 品牌排行榜
  • 2026年做澄清过滤的靠谱公司有哪些 - 品牌排行榜
  • Jamf Cloud证书配置全解析
  • 100个AI术语表:从核心概念到前沿技术,这份指南助你快速上手大模型时代!
  • 2026年AI大模型常问的问题以及答案,最新的面试大厂题!
  • 基于Django的大语言模型服务端实现与实战应用
  • 26年大模型面试必问八股文,背完通过率98%,看我如何吊打面试官
  • 告别幻觉与黑箱!LOM本体大模型如何引领企业决策智能化革命?
  • 深入解析 OpenAI API 客户端:超越基础调用的高级实践与架构设计
  • VLLM本地部署大模型保姆级教程:从环境搭建到RAGFlow集成,数据安全又高效!
  • AI工具大比拼:Coze、Dify、n8n、LangChain,哪个才是你的“AI神器”?
  • 保姆级教程:vLLM部署Qwen2-7B大模型,新手半小时轻松搞定,本地运行更香!
  • 大模型面试实录:20家公司Offer与拒信背后,我悟出了这些职场真相!
  • 自动上下料机械手定制哪家专业?2026年优质冲压机械手生产商与靠谱冲床机械手厂家实力推荐:无锡岩回自动化领衔 - 栗子测评
  • OpenSpec新手教程-20260304
  • Spec Kit “从零到专家”
  • 2026年优质鞋盒包装生产厂家精选!靠谱温州包装盒源头工厂汇总,飞机盒定制厂家推荐:浙江豪海包装领衔 - 栗子测评
  • 用户管理(MySQL)
  • 离线安装 Nginx
  • 用docker启动mysql步骤
  • 深入解析 Spring WebFlux:原理与应用
  • 环境安装与配置:全面了解 Go 语言的安装与设置
  • 非连续道路 GeoJSON 生成的连续性问题及解决 —— 基于 242 国道新晃段的 Java 实现