Mozi.HttpEmbedded 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Mozi.HttpEmbedded 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Mozi.HttpEmbedded 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !

软件简介

Mozi.HttpEmbedded是一个基于.Net构建的嵌入式Web服务器,为.Net App提供web服务功能。

嵌入式的目标不是单片机,而是.Net应用程序。

此项目并不会实现非常丰富的大型Web服务器功能

项目基于.Net Framework 4.0开发,也可转换为.Net Core/.Net Standard项目

特点

HttpEmbedded在Socket之上使用异步单线程模型,构建了一个HTTP服务器。

  1. 嵌入式

    本项目可作为.Net应用的内嵌Web服务器,亦可作为单独Web服务器

  2. 轻量化

    项目编译结果小,部署程序占用系统资源少

  3. 可用性

    开箱即用,配置少,可控性高。同时遵从.Net平台Web项目开发的典型规范。

  4. 低耦合

    不改变现有业务逻辑,无需对现有代码进行改造,即可实现现有功能面向HTTP提供服务器

  5. 可控性

    宿主程序对Web服务高度可控

典型应用场景

业务体系或功能已开发完成,期望在项目中加入一个Web服务器功能,同时不能对现有代码进行大规模改动。

在经典的Asp.Net开发中,Web服务的部署高度依赖于IIS,.Net Core项目则可基于Kestrel/IIS部署。
基于KESTREL或IIS部署的WEB项目,都基于Asp.Net体系。

原理及功能

  1. HTTP协议 实现HTTP/1.1

  2. 通讯认证 实现基本认证(Basic)

  3. Cookie管理 支持标准Cookie

  4. HTTP请求方法 GET POST

  5. 路由 实现了URL管理,参见Router模块

  6. 引用与依赖关系 依赖于.Net Framework

  7. Payload压缩 使用GZip压缩

  8. 字符编码 字符编码部分使用UTF-8

功能与版本迭代

不定期对HttpEmbedded的功能进行完善,解决各种BUG。HTTP标准功能繁多,需要一步步实现。

版权说明

本项目采用MIT开源协议,欢迎复制,引用和修改。

使用说明

    HttpServer hs = new HttpServer();
    //配置端口并启动服务器
    hs.SetPort(9000).Start();
    //开启认证
    hs.UseAuth(AuthorizationType.Basic).SetUser("admin", "admin");
    //开启静态文件支持
    hs.UseStaticFiles("");
    //路由映射
    Router router = Router.Default;
    router.Map("services/{controller}/{id}");
    Console.ReadLine();

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (3)

加载中
与 Kestrel 比怎样?
2020/09/14 09:43
回复
举报
同问
2020/09/14 10:17
回复
举报
JasonWcx软件作者
不能和kestrel比,也比不了,这个项目并不是为了支持Asp.net。典型的应用,是在已有应用中快速实现WEB的能力。可以作为中间件载体。最好是做终端管理。
2020/09/14 16:03
回复
举报
更多评论
发表了资讯
2021/07/13 10:09

Mozi.HttpEmbedded 1.2.7-beta 发布,嵌入式 Web 服务器

Mozi.HttpEmbedded 1.2.7-beta 已经发布,嵌入式 Web 服务器。 此版本更新内容包括: [修复] Mozi.StateService解决心跳包解析错误的问题 [新增] Mozi.StateService增加订阅者功能 Mozi.StateService抛弃BeginInvoke调用方式 Mozi.SSDP抛弃BeginInvoke调用方式 Mozi.HttpEmbedded开始着手实现模板引擎 详情查看:https://gitee.com/myui_admin/mozi/releases/1.2.7-beta...

0
1
发表了资讯
2021/06/12 10:10

Mozi.HttpEmbedded 1.2.2 可用版发布,HTTP 服务器

Mozi.HttpEmbedded是一个基于.Net构建的嵌入式Web服务器,为.Net App提供web服务功能。 1.2.2是一个可用版本,可应用于实践项目中。 经过一段时间的测试,解决了实际应用中发现的部分问题。 更新日志 [修复] 修正multipart/form-data数据解析不正确的问题 修正UrlEncoder对url解码不正确的问题 [新增] 增加url编码对宽字符的解码支持(中文等) 命名空间Mozi.HttpEmbedded.Page,增加内置API Runtime 命名空间Mozi.HttpEmbedded.S...

0
0
发表于网络技术专区
2021/05/12 10:12

Mozi.HttpEmbedded 1.2.1 预览版发布,HTTP 服务器

Mozi.HttpEmbedded 发布预览版 1.2.1.alpha。 Mozi.HttpEmbedded是一个基于.Net构建的嵌入式Web服务器,为.Net App提供web服务功能。 计划实现HTTPS功能,并引入页面渲染功能。 更新日志 解决路由不能识别前缀的问题 解决路由指向的问题 对文件上传进行优化 对部分代码进行优化,使功能更健壮

0
0
发表了资讯
2021/02/27 10:03

Mozi.HttpEmbedded 1.1.8 预览版发布,HTTP 服务器

Mozi.HttpEmbedded 发布预览版 1.1.8.alpha。 Mozi.HttpEmbedded是一个基于.Net构建的嵌入式Web服务器,为.Net App提供web服务功能。 在实践中,SSDP功能部分基于HTTP实现和封装,所以决定着手实现SSDP功能。 更新日志 封装UDPSocket 实现SSDP基础实现,功能尚在完善中 修正URI识别路径大小写的问题 增加HttpRequest重播方法 增加HTTP文件上传API...

1
1
发表于网络技术专区
2020/10/17 15:42

Mozi.HttpEmbedded 1.1.7 预览版发布,HTTP 服务器

Mozi.HttpEmbedded 发布预览版 1.1.7.alpha。 Mozi.HttpEmbedded是一个基于.Net构建的嵌入式Web服务器,为.Net App提供web服务功能。 更新日志 增加数据序列化接口 增加BasicApiAttribute作为WebApi标记 引入CodeMirror作为测试后台的代码编辑器 改进日志记录的方式

1
2
发表于开发技能专区
2020/09/19 10:48

Mozi.HttpEmbedded 1.1.4 预览版发布,HTTP 服务器

Mozi.HttpEmbedded 发布预览版 1.1.4.alpha。 Mozi.HttpEmbedded是一个基于.Net构建的嵌入式Web服务器,为.Net App提供web服务功能。 1.1.4.alpha,已实现了基本的HTTP服务器功能,能够支撑应用的实现。 更新日志 实现了基本的HTTP服务器功能 引入了一个后台管理测试模板 增加WEBDAV功能(未充分调试)

2
3
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表于信息安全专区
2020/10/16 14:36

关于 Mozi 僵尸网络近期活跃态势报告

报告编号:B6-2020-101502 报告来源:360CERT 报告作者:360CERT 更新日期:2020-10-15 0x01 概述 近期,360安全大脑的360安全分析响应平台在区域侧监测到 Mozi 僵尸网络的活动频繁,呈愈演愈烈的趋势。 Mozi 是一个相对较新的物联网僵尸网络,以 DHT 协议建立 P2P 网络进行通信,主要通过漏洞利用和telnet弱口令两种方式进行蠕虫式传播。2019年9月360Netlab团队捕获到相关样本,并于19年12月首次公布。 据悉该恶意软件自2019年...

0
0
发表了博客
2019/01/07 15:07

使用tomcat7-maven-plugin

2019-01-0714:16:44 功能: (使用maven中的tomcat插件,就可以将tomcat集成到项目中,效果就是:在不同平台中无需配置tomcat就可以直接运行web) 地址: tomcat官网maven插件:http://tomcat.apache.org/maven-plugin.html 使用方法: (1)在maven项目的pom.xml中添加插件依赖: <pluginManagement> <plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactI...

0
0
2020/12/14 14:28

我看技术人的成长路径

![头图.png](https://ucc.alicdn.com/pic/developer-ecology/888e2279a4234201bd72ed51fa683c9e.png) 作者 | 儒枭 **来源|**[**阿里巴巴云原生公众号**](https://mp.weixin.qq.com/s/dzqmuX7warJZ2rFY0OctwQ) # 为什么要成长? 成长是为了在职场升值,提升职场竞争力! **衡量标准:你成长的速度要匹配甚至超越业务发展的速度**。 当你成长速度超越业务发展速度的时候,组织才会把更重要的职责交给你,如果你成长的速度跟不上业...

1
0
发表于程序人生专区
2021/01/13 08:00

我看技术人的成长路径-面试必备

本文7120字,非常值得一读。 为什么要成长 成长是为了在职场升值,提升职场竞争力! 衡量标准:你成长的速度要匹配甚至超越业务发展的速度。 当你成长速度超越业务发展速度的时候,组织才会把更重要的职责交给你,如果你成长的速度跟不上业务发展的速度,可能会面临被调整。 成长的维度 阿里的技术人绝大部分是做业务技术的,即业务和技术要同时发展,纯技术发展路线是指中间件、数据库、操作系统、硬件之类的实打实的技术。阿里...

0
0
发表了博客
2020/11/21 13:18

我看技术人的成长路径

简介: 有一句诗词说:宠辱不惊,看庭前花开花落;去留无意,望天上云卷云舒。其实就是讲内心修炼到了一种心境平和,淡泊自然的境界。 作者 | 儒枭 为什么要成长 成长是为了在职场升值,提升职场竞争力! **衡量标准:你成长的速度要匹配甚至超越业务发展的速度。 ** 当你成长速度超越业务发展速度的时候,组织才会把更重要的职责交给你,如果你成长的速度跟不上业务发展的速度,可能会面临被调整。 成长的维度 阿里的技术人绝大...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
3 评论
20 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部