zoukankan      html  css  js  c++  java
  • 轻量级的Web框架——Nancy

    最近想找一个简单的.Net下的轻量级Web框架,作为用户的本地的一个WebServer,实现同浏览器程序的一些简单交互,并调用本地服务,实现类似浏览器插件的功能。它有如下几点要求:

    • 简单,能快速掌握、开发
    • 能.net framework上实现,因为要通过它就像一些系统调用,.net core要麻烦些。最好能支持.net 4.0,以能在一些用XP的上古时代的机器上使用
    • 能实现SelfHost,如果需要IIS承载的话,除了安装麻烦外,权限也受限制。

    虽然Asp.net本身能满足这个要求,可以通过owin的方式实现selfhost,但是我觉得它还是太重了。直到后来找到了Nancy这个Web框架,官网的说明如下:

    • Nancy是一个轻量级的独立的框架,下面是官网的一些介绍:
    • Nancy 是一个轻量级用于构建基于 HTTP 的 Web 服务,基于 .NET 和 Mono 平台,框架的目标是保持尽可能多的方式,并提供一个super-duper-happy-path所有交互。
    • Nancy 设计用于处理 DELETE, GET, HEAD, OPTIONS, POST, PUT 和 PATCH 等请求方法,并提供简单优雅的 DSL 以返回响应。
    • Nancy和Asp.net MVC原理相似,但有自己的一套路由机制,在使用上更加易用,可以用Nancy快速开发一些网站。
    • Nancy并不依赖任何现有的框架,所以他可以运行在任何平台上面。

    它基本能满足我上面的要求。首先他非常简单,如下是一个简单示例:

    public class Module : NancyModule
    {
        public Module()
        {
            Get("/greet/{name}"x => {
                return string.Concat("Hello "x.name);
            });
        }
    }

    另外,它也支持SelfHost,安装Nancy.Hosting.Self即可:

    using (var host = new NancyHost(new Uri("http://127.0.0.1:3122")))
    {
        host.Start();
        Console.WriteLine("Running on http://localhost:3122");
        Console.ReadLine();
    }

    国内也有一些文章在介绍这个库,感兴趣的朋友可以看下:

     

  • 相关阅读:
    迷你图标集大集合:5000+ 30套免费的图标(不得不下,设计必备)
    Github简介
    Sublime Text 3 文本编辑器
    FusionCharts V3图表导出图片和PDF属性说明(转)
    FusionCharts参数的详细说明和功能特性(转)
    SQL 数据结构操作语句
    SQL Server 2008 各种DateTime的取值范围
    Datagrid数据导出到excel文件的三种方法
    开发环境
    如何利用ThoughtWorks.QRCode 生成二维码
  • 原文地址:https://www.cnblogs.com/TianFang/p/10630003.html
Copyright © 2011-2022 走看看