首页 > 代码库 > Nancy 寄宿IIS
Nancy 寄宿IIS
一:简介
- 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并不依赖任何现有的框架,所以他可以运行在任何平台上面。
二:创建空白的项目
三:引用nancy类库文件 Nancy.dll 和 Nancy.Hosting.AspNet.dall文件
public class HomeModule : NancyModule { public HomeModule() { Get["/home/get"] = parameters => "Hello World"; } }
public class HomeModule : NancyModule { public HomeModule():base("/home") { Get["/home/get"] = parameters => "Hello World"; } }
四、将Nancy项目发布到IIS中
public class HomeModule : NancyModule { public HomeModule() : base("/home") { //同步 Get["/get/{name}"] = parameters => { return parameters.Name; }; Post["/GetMore"] = p => { var name = Request.Form["name"]; var age = Request.Form["age"]; var address = Request.Form["address"]; return $"姓名{name},年龄{age},地址{address}"; }; //异步 Get["/GetOne", true] = async (p, k) => { return "这是一个异步的get请求"; }; Post["/Add", true] = async (p, k) => { var name = Request.Form["name"]; var age = Request.Form["age"]; var address = Request.Form["address"]; var phone = Request.Form["phone"]; return $"姓名{name},年龄{age},地址{address},手机{phone}"; }; } }
五、新建项目请求
Get请求 HttpClient client = new HttpClient(); var result = await client.GetAsync("http://localhost:166/home/Getone"); var p = result.Content.ReadAsStringAsync().Result;
Post请求 HttpContent content = new StringContent("name=xiaoming&age=20&address=beijingchaoyang&phone=15212341234"); //如果不正确会导致Request.From 获取不到数据 content.Headers.ContentType = new MediaTypeHeaderValue("application/x-www-form-urlencoded"); HttpClient client = new HttpClient(); var result = await client.PostAsync("http://localhost:166/home/Add", content); var p = result.Content.ReadAsStringAsync().Result;
Nancy 寄宿IIS
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。