C# Nancy框架开发 WebApi 一:(使用Nancy)
一:Nancy的引入与使用 (Nancy是一个类似于MVC的轻量级框架。):
1.新建一个 ASP.NET Web应用程序
2.管理NuGet程序包 引入Nancy
现在最新的是2.0版 ,引入时会报错误,无法引用到.NET4.5
我这里把版本选择为1.4.1就可以了。
还有一个个包 Nancy.Hosting.Aspnet
添加完毕之后 Web.config里面会自动添加几个配置项
3.在项目根目录下新建一个Modules文件夹 (类似于MVC的Control控制器)
①在新建一个ApiModule.cs类 既然是类似于MVC,那么名字也是可以随意取的,但是得符合规范。例如(HomeModule.cs、TestModule.cs... 都是可以的)
②在ApiModule.cs中 引入Nancy包。
③继承NancyModule
④创建一个构造函数
4.在构造函数里面写处理方法
using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace NancyWebApiDemo.Modules { using Nancy; public class ApiModule : NancyModule { public ApiModule() { //get方式 访问当前接口的默认页面 Get["/"] = p => { return "WebApi Program Started!"; }; //post方式才能访问当前接口方法 Post["queryUser"] = p => { //获取参数值 string userId = Request.Query["userID"]; //初始化一个返回对象 var user = new { id = userId, name = "Tom", phone = "13000000000" }; System.Web.Script.Serialization.JavaScriptSerializer Js = new System.Web.Script.Serialization.JavaScriptSerializer(); //返回一个Json数据 return Js.Serialize(user); ; }; } } }
5.预览效果
这时候点击启动 会默认进入 Get["/"]里 页面返回
我们试着访问 定义的Post["queryUser"] 接口是无法访问的
当我们把他改为Get 就可以访问了
下一章记录一下接口数据安全处理
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义