随着前后端分离的大热,WebApi在项目中的作用也是越来越重要,可单独部署、与前端和App交互都很方便,既然有良好的发展趋势,我们当然应该顺势而为——搞懂WebApi!Restful相当于给Http请求增加了语义,Post(增)、Delete(删)、Put(改)、Get(查),有时会用Get进行查询,用Post进行增、删、改。

从MVC到WebApi,路由机制一直都在其中扮演着重要的角色。

它可以很简单:如果你只需要会用一些简单的路由,如/Home/Index那么你只需要配置一个默认路由就能搞定。

它可以很神秘:你的url可以千变万化,看到一些“无厘头”的url,很难理解它是如何找到匹配的Action,例如/api/Pleasure/1/detail,这样的url可以让你纠结半天。

它可以很深奥:当面试官提问“请简单分析下MVC路由机制的原理”,你可能事先就准备好了答案,然后劈里啪啦一顿(型如:UrlRoutingMoudle—>Routes—>RouteData—>RequestContext—>Controller),你可能回答的很流利,但并不一定理解这些个对象到底是啥意思。):目前为止我还没能理解透,以后会继续努力的直到弄清楚。

一、MVC和WebApi路由机制比较
1、MVC使用的路由
在MVC中,默认路由机制是通过解析url路径来匹配Action。比如:/User/GetList,这个url就表示匹配User控制器下的GetList方法,这是MVC路由的默认解析方式。为什么默认的解析方式是这样子的呢?因

C#WebApi路由机制详解相关推荐

  1. WebApi路由机制详解

    随着前后端分离的大热,WebApi在项目中的作用也是越来越重要,由于公司的原因我之前一直没有机会参与前后端分离的项目,但WebApi还是要学的呀,因为这东西确实很有用,可单独部署.与前端和App交互都 ...

  2. WebApi路由机制详解——看完不会用你打我

    随着前后端分离的大热,WebApi在项目中的作用也是越来越重要,由于公司的原因我之前一直没有机会参与前后端分离的项目,但WebApi还是要学的呀,因为这东西确实很有用,可单独部署.与前端和App交互都 ...

  3. WebApi 路由机制剖析

    阅读目录 一.MVC和WebApi路由机制比较 1.MVC里面的路由 2.WebApi里面的路由 二.WebApi路由基础 1.默认路由 2.自定义路由 3.路由原理 三.WebApi路由过程 1.根 ...

  4. php 反射原理,PHP反射机制详解

    本文主要和大家分享PHP反射机制详解,内容包括1.自动生成文档2.实现 MVC 架构3.实现单元测试4.配合 DI 容器解决依赖,希望能帮助到大家. 1.自动生成文档 根据反射的分析类,接口,函数和方 ...

  5. Dubbo 原理和机制详解

    Dubbo 是一款Java RPC框架,致力于提供高性能的 RPC 远程服务调用方案.作为主流的微服务框架之一,Dubbo 为开发人员带来了非常多的便利. 1. Dubbo核心功能 Dubbo主要提供 ...

  6. HTTP缓存机制详解

    HTTP缓存机制详解 一. 前言 二. 缓存的介绍 什么是缓存? 为什么要使用缓存? 1. 减少冗余的数据传输 2. 缓解带宽瓶颈 3. 破坏瞬间拥塞 4. 降低距离时延 三. 缓存有效性 命中和未命 ...

  7. PHP autoload机制详解

    PHP autoload机制详解 转载自 jeakccc PHP autoload机制详解 (1) autoload机制概述 在使用PHP的OO模式开发系统时,通常大家习惯上将每个类的实现都存放在一个 ...

  8. 模糊匹配 读音_onenote搜索机制详解②:两种搜索模式,模糊与精确匹配

    先从纯文本搜索讲起,这是最基本也是最重要的. 从这篇开始,以及接下来连续几篇文章,都会介绍搜索的基础功能.注意,这几篇文章中谈论的都是基本的.正常的搜索功能,暂时不考虑Bug等因素. 在很多软件(例如 ...

  9. Java类加载机制详解【java面试题】

    Java类加载机制详解[java面试题] (1)问题分析: Class文件由类装载器装载后,在JVM中将形成一份描述Class结构的元信息对象,通过该元信息对象可以获知Class的结构信息:如构造函数 ...

最新文章

  1. Mac环境下Docker及Splash的安装运行教程
  2. Windows下Git上传项目代码记录
  3. 怎样保存python源程序_五分钟教会你如何编写、保存与运行 Python 程序
  4. 离线或在线加载pytorch、mmdetection预训练模型vgg、resnet、alexnet等
  5. js操作符类型转换大全
  6. Intellij IDEA安装与使用,完整详细。
  7. jquery各历史版本下载地址
  8. 解析Health端点数据获取异常数据
  9. Android aidl Binder框架浅析
  10. POJ 1155 TELE 树形DP
  11. php语言简述_PHP语言的简介
  12. windows删mysql库代码_windows完全删除MySQL数据库
  13. 拼多多校招内推编程题2 大整数乘法
  14. 佛祖保佑永无BUG python版本
  15. [内附完整源码和文档] 基于Android的手机音乐播放器的设计与实现
  16. 前端开发问题及解决方案
  17. c语言自动填表chrome网页,教你设置Chrome浏览器里的自动填表功能
  18. 共享单车蓝牙锁方案phy6222系列蓝牙芯片共享产品共享设备低成本BLE
  19. 自然语言处理可以做什么?NLP就业方向
  20. 实验室管理软件 费用报销 项目经费 试剂耗材订购

热门文章

  1. 10投屏后没有声音_手机投屏到电视没有声音?
  2. 清空缓存的命令_最实用的6个网络命令,网络故障不求人
  3. vue 微信公众号支付接口_基于vue的h5项目之支付宝支付与微信支付
  4. 什么情况下选择linux,在哪种情况下建议选择BSD系统而不是Linux?
  5. 基于python的人脸识别技术_用Python写个简单但强大的人脸识别系统
  6. google提供的adb工具包_开源化学信息学工具包(Open Access Cheminformatics Toolkits)
  7. 放弃Windows,用国产开源替换政府办公系统!这个国家做到了
  8. go 编译 android arm,golang交叉编译
  9. oracle logminer java_Oracle logminer
  10. python web框架 多线程_Django基础知识 web框架的本质详解