<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Mozi.HttpEmbedded嵌入式 Web 服務(wù)器

          聯(lián)合創(chuàng)作 · 2023-10-01 14:36

          Mozi.HttpEmbedded是一個(gè)基于.Net構(gòu)建的嵌入式Web服務(wù)器,為.Net App提供web服務(wù)功能。

          嵌入式的目標(biāo)不是單片機(jī),而是.Net應(yīng)用程序。

          此項(xiàng)目并不會(huì)實(shí)現(xiàn)非常豐富的大型Web服務(wù)器功能

          項(xiàng)目基于.Net Framework 4.0開發(fā),也可轉(zhuǎn)換為.Net Core/.Net Standard項(xiàng)目

          特點(diǎn)

          HttpEmbedded在Socket之上使用異步單線程模型,構(gòu)建了一個(gè)HTTP服務(wù)器。

          1. 嵌入式

            本項(xiàng)目可作為.Net應(yīng)用的內(nèi)嵌Web服務(wù)器,亦可作為單獨(dú)Web服務(wù)器

          2. 輕量化

            項(xiàng)目編譯結(jié)果小,部署程序占用系統(tǒng)資源少

          3. 可用性

            開箱即用,配置少,可控性高。同時(shí)遵從.Net平臺(tái)Web項(xiàng)目開發(fā)的典型規(guī)范。

          4. 低耦合

            不改變現(xiàn)有業(yè)務(wù)邏輯,無(wú)需對(duì)現(xiàn)有代碼進(jìn)行改造,即可實(shí)現(xiàn)現(xiàn)有功能面向HTTP提供服務(wù)器

          5. 可控性

            宿主程序?qū)eb服務(wù)高度可控

          典型應(yīng)用場(chǎng)景

          業(yè)務(wù)體系或功能已開發(fā)完成,期望在項(xiàng)目中加入一個(gè)Web服務(wù)器功能,同時(shí)不能對(duì)現(xiàn)有代碼進(jìn)行大規(guī)模改動(dòng)。

          在經(jīng)典的Asp.Net開發(fā)中,Web服務(wù)的部署高度依賴于IIS,.Net Core項(xiàng)目則可基于Kestrel/IIS部署。
          基于KESTREL或IIS部署的WEB項(xiàng)目,都基于Asp.Net體系。

          原理及功能

          1. HTTP協(xié)議 實(shí)現(xiàn)HTTP/1.1

          2. 通訊認(rèn)證 實(shí)現(xiàn)基本認(rèn)證(Basic)

          3. Cookie管理 支持標(biāo)準(zhǔn)Cookie

          4. HTTP請(qǐng)求方法 GET POST

          5. 路由 實(shí)現(xiàn)了URL管理,參見Router模塊

          6. 引用與依賴關(guān)系 依賴于.Net Framework

          7. Payload壓縮 使用GZip壓縮

          8. 字符編碼 字符編碼部分使用UTF-8

          功能與版本迭代

          不定期對(duì)HttpEmbedded的功能進(jìn)行完善,解決各種BUG。HTTP標(biāo)準(zhǔn)功能繁多,需要一步步實(shí)現(xiàn)。

          版權(quán)說明

          本項(xiàng)目采用MIT開源協(xié)議,歡迎復(fù)制,引用和修改。

          使用說明

              HttpServer hs = new HttpServer();
              //配置端口并啟動(dòng)服務(wù)器
              hs.SetPort(9000).Start();
              //開啟認(rèn)證
              hs.UseAuth(AuthorizationType.Basic).SetUser("admin", "admin");
              //開啟靜態(tài)文件支持
              hs.UseStaticFiles("");
              //路由映射
              Router router = Router.Default;
              router.Map("services/{controller}/{id}");
              Console.ReadLine();
          
          
          瀏覽 23
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  91免费三级片 | www.操操操 | 无码人妻在线视频 | 色视频在线 | 国产女人18水真多18精品 |