ASP.NET WEB API是基于.NET Framework用来构建Restful软件架构的框架,它是基于HTTP协议。Http不只是能够生成我们常见的web页面,它更是能够建立服务和面向资源的平台。使用HTTP协议建立的服务更加的轻量级,更加的简洁。不同的客户端可以更加无缝的使用服务。为了理解为什么要使用WEB API,首先要理解的一个概念就是Restful。

Restful

Restful是一种面向资源的软件架构,Rest的全文是Representational State Transfer,即表现层状态转换。这样的字面意义对于我们理解Rest不是很容易,下面,我们使用比较通俗的方式来理解面向资源。在我们日常使用计算设备时,实际上,计算设备无时无刻不在与另外一台设备通信,比如QQ,微信等等,我们不断的从一台设备上获取数据,提交数据,更新数据,删除数据。这里的数据不单单是指数字和文本,更包括图片,文件等等。这种通信方式称为分布式通信。设备在端口的某一处公开一系列的操作供其他设备使用。这些操作就是服务。我们通过调用设备公开的服务,完成相关的操作并在必要的时候返回数据。然而,不管是使用哪种方式实现服务。客户端使用服务都是重量级的,繁琐的。因为客户端要为访问这些服务建立代理,并通过代理来与服务端设备通信。而对于一些比较轻量级的通信,面向服务显然增加了开发的复杂性。REST 是一种轻量级的面向服务架构风格,其实现和操作比面向服务更为简洁,可以利用 HTTP 协议实现在响应速度,性能、效率和易用性上都优于面向服务的软件架构。

Representational State Transfer(表现层状态转换)实际上可以看做是表现层资源状态转换,下面我们使用一张图来说明Rest的几个特性。

通过上图我们来理解面向资源的几个重要组成部分、

  1. 资源:资源即使分布在网络上的设备实体(比如文本,图片,歌曲,文件,数据…)
  2. 表现层:用于展现资源的设备
  3. URI:指向网络实体资源的地址
  4. 状态转换:将无状态的HTTP协议通过表现层展示状态

在上图中,网络中的一个服务器集群通过地址http://127.0.0.1/xxx向外部公开资源。智能设备A,B,C(可以是PC,可以是IOS设备,可以是安卓设备)通过HTTP协议访问服务器公开的地址。服务器回返回资源给客户端(此处是json)。客户端获取json并组装数据,转换状态呈现给最终用户。整个访问完成。Rest可以使用的HTTP动作是Get,Post,Put,Delete。对于面向资源的服务,客户端的访问更加的简洁与高效,并且不需要设置代理,任何平台都可以直接使用获取的资源。而不需要针对某一个具体的平台做特殊处理。那么,对于面向资源的服务,不同平台的使用更加简洁。不同平台的客户端只需要关注表现层,这个也遵守了软件架构中的分离关注点原则。

上面简短的解释了面向资源的服务,下面的章节,我们来看看ASP.NET WEB API怎么实现面向资源的服务

ASP.NET WEB API实现面向资源的服务

转载于:https://www.cnblogs.com/ColeLiu/p/4686475.html

ASP.NET WEB API简介相关推荐

  1. ASP.NET Web API 简介

    本周早些时候,我写过一篇关于 ASP. NET MVC 4 测试版的博文.ASP. NET MVC 4 是一个重大的更新,它带来了一堆出色的新功能.我最兴奋的改进之一是为创建"Web ApI ...

  2. 使用ASP.NET Web Api构建基于REST风格的服务实战系列教程

    最近发现web api很火,园内也有各种大神已经在研究,本人在asp.net官网上看到一个系列教程,原文地址:http://bitoftech.net/2013/11/25/detailed-tuto ...

  3. 监控系统简介(二):使用 App Metrics 在 ASP.NET Web API 中记录指标

    回顾 在<监控系统简介:使用 Prometheus 与 Grafana>一文中,我们了解了什么是监控系统,Prometheus 这一监控工具及它提供的数据类型.PromQL 以及 Graf ...

  4. ASP.NET MVC (四、ASP.NET Web API应用程序与跨域操作)

    目录 前言: 1.创建MVC项目 2.修改返回格式 3.创建[Web API]控制器 4.创建[HttpGet]访问接口 5.创建[HttpPost]访问接口 6.测试接口: 6.1.执行:点击[调试 ...

  5. ASP.net Web API综合示例

    目录 概述 功能介绍 程序结构 服务器端介绍 客户端介绍 "契约" Web API设计规则 并行写入冲突与时间戳 身份验证详解 Web API验证规则 客户端MVVM简介 Web. ...

  6. 【ASP.NET Web API教程】2 创建各种Web API

    原文 [ASP.NET Web API教程]2 创建各种Web API Chapter 2: Creating Web APIs 第2章 创建各种Web API 本文引自:http://www.asp ...

  7. 《ASP.NET Web API 2框架揭秘》

    <ASP.NET Web API 2框架揭秘> 基本信息 作者: 蒋金楠 出版社:电子工业出版社 ISBN:9787121235368 上架时间:2014-7-5 出版日期:2014 年7 ...

  8. ASP NET Web API 2框架揭秘

    ASP.NET Web API2框架揭秘(.NET领域再现力作顶级专家精讲微软全新轻量级通信平台) 蒋金楠 著   ISBN 978-7-121-23536-8 2014年7月出版 定价:108.00 ...

  9. (四)Asp.net web api中的坑-【api的返回值】

    (四)Asp.net web api中的坑-[api的返回值] 原文:(四)Asp.net web api中的坑-[api的返回值] void无返回值 IHttpActionResult HttpRe ...

  10. WCF 和 ASP.NET Web API

    地址:https://docs.microsoft.com/zh-cn/dotnet/framework/wcf/wcf-and-aspnet-web-api WCF 是 Microsoft 为生成面 ...

最新文章

  1. linux中sleep再循环里,Linux sleep 语句以及循环 测试负载
  2. 【百度地图API】发布静态图API啦!只需一个网址,即可展示定制百度地图!
  3. 成功男士的健康心理特征
  4. 求整数的位数及各位数字之和(C语言)
  5. iOS 获取屏幕的属性和宽度
  6. oracle里面的degree,收集统计信息degree不生效的问题
  7. es6 混合commjs_前端模块化——CommonJS、ES6规范
  8. c++学习笔记--C++Primer第4版--标准库类型string
  9. 高品味男人:分寸与克制
  10. 【学堂在线数据挖掘:理论方法笔记】第五天(3.29)
  11. Java千百问_06数据结构(003)_什么是基本类型包装器
  12. linux----文件权限管理
  13. 心电图 python_能测血压,还有心电图,兼顾9大运动模式,dido手环还不错
  14. iOS dSYM详解和分析crash,ips文件
  15. 世嘉MD游戏开发【一】:win10环境下配置SGDK
  16. AspNetPager分页控件教程
  17. 克隆你的声音,可能只需要5秒钟:MockingBird实现AI拟声 (详解)
  18. java 计算税收_根据税收征收管理法律制度的规定,整个税收征收管理的起点是( )...
  19. html页面边框的简单设置方法
  20. 元岛屋日式烤肉,这个夏天你怎可错过!

热门文章

  1. php解决中文乱码的函数,php 中解决json中文乱码的函数_PHP教程
  2. 勾股定理的html代码,有趣的数学——勾股定理
  3. nifi执行linux命令log,shell - 无法使用Nifi curl命令启动处理器 - SO中文参考 - www.soinside.com...
  4. java 实例方法递归_Java实现简单的递归操作方法实例
  5. docker 搭建nginx php mysql_docker搭建nginx+mysql+php
  6. MCS:连续随机变量——Erlang分布
  7. 用Github的Api发现stars最多开源项目
  8. 容器技术Docker K8s 12 容器服务Kubernetes版ACK详解-使用镜像快速创建无状态应用
  9. 基于近邻法的分类器设计
  10. 2021-09-07客户端向 NameNode 请求创建文件,NameNode 根据元数据信息计算出文件的元数 据信息