论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
软件与程序人生
›
后端开发
›
.Net
›
搭建.Net WebApi并配置Swagger(一)
搭建.Net WebApi并配置Swagger(一)
钜形不锈钢水箱
金牌会员
|
2024-7-26 19:52:16
|
显示全部楼层
|
阅读模式
楼主
主题
889
|
帖子
889
|
积分
2667
C#进阶之WebAPI(一)
那么起首第一点:什么是WebAPI?
起首我们了解一下.net framework 的框架构成:
可以看到,WebAPI和mvc同属于B/S模板框架的一种,官方对于WebApi的定义是:WebAPI是一个框架,可以轻松构建HTTP服务,覆盖广泛的客户端,包罗浏览器和移动设备,WebAPI是在.NetFramwork上构建RESTful步伐的理想平台。
这里有须要解释一下什么是RESTful: RESTful是一种计划风格,REST中的 get、post、put、delete来举行数据的增删改查,如果开发人员的应用步伐符合RESTful原则,那他的服务可被称之为“Restful风格应用服务”。
然后我们了解一下:为什么要使用WebAPI?
在解释这个问题之前我们需要起首知道一下.net为外部提供接口的方式有哪些?
答:WCF、WebService、WebAp、一样寻常处置惩罚步伐。
那来了解一下他们之间的区别:
WebService:
1:基于soap协议,数据格式是xml、
2:只支持http协议、
3:不是开源的,但是可以被任意一个了解xml的人使用、
4:只能部署在iis上。
WCF:
1:基于soap协议,数据格式是xml、
2:WCF是webservice的进化版,支持各种各样的协议,像TCP、http、https、NamedPipes、MSMQ等、
3:不是开源的,但是可以被任意一个了解xml的人使用、
4:可以部署在应用步伐中、IIS上或者Windows服务中。
WebAPI:
1:是一个简单的构建http服务的新框架、
2:在.net平台上WebAPI是一个开源的、理想的、构建RESTful服务的技术、
3:可以使用http的所有特点,(比如URIs、request/response头、缓存、版本控制、多种内容格式)、
4:支持mvc的特性,像路由、控制器、action、fiter、模型绑定、控制反转、依赖注入、单位测试、
5:可以部署在应用步伐中、IIS上、
6:是一个轻量级的框架,对各种终端的支持都很好、
7:Response可以被webAPI的MediaTypeFormatter转换成json、XML或者任何你想转换的格式。
一样寻常处置惩罚步伐:
一样寻常处置惩罚步伐其实就是和页面处置惩罚步伐相区分开的,因为实现的是IhttpHandler接口,而且不需要继承自Page类。所以没有那么多的变乱需要处置惩罚,不必斲丧太多资源,所以性能方面要比aspx高。
那么回到这个问题,为什么要使用WebApi?
当你遇到下面这些情况的时候,就可以思量使用webAPI来构建你的服务了;
1:需要webservice但是不需要soap、
2:需要在已有的WCF服务底子上建立non-soap-based http服务、
3:只想发布一些简单的http服务,不想使用相对复杂的wcf配置、
4:发布的服务会被限制带宽的设备访问、
5:希望使用开源框架,关键时刻可以本身调试或者自定义一下框架。
最后总结一下WebAPI和MVC之间的区别:WebAPI和MVC之间有什么区别?
相信使用过mvc和webapi的同学都会觉得这两者太相似了,使用起来也差不多,但是既然是两个框架,那肯定是有区别的,我对WebAPI和MVC的区别做了一下总结:
1:MVC主要是用来构建网站的,既关心数据也关心页面展示,而WebAPI只关心数据、
2:WebAPI支持格式协商,客户端可以通过Accept header关照服务器期望的格式、
3:WebApi支持Self Host,MVC目前不支持、
4:WebAPI通过不同的http verb表达不同的动作(CRUD),MVC则通过Action名字表达动作、
5:WebAPI内建于System.Web.Http 命名空间下,而MVC位于Systm.Web.Mvc命名空间下,因此路由等有些许不同、
6:WebAPI非常适合构建移动客户端服务。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
正序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
发新帖
回复
钜形不锈钢水箱
金牌会员
这个人很懒什么都没写!
楼主热帖
Linux——环境基础开发工具的使用 ...
详细介绍如何在ubuntu20.04中安装ROS系 ...
Android Studio第12课关于databinding ...
架构师说低代码:走出半生,归来仍是“ ...
Android Studio实现音乐播放器2.0 ...
HCIA学习笔记四:华为设备登录信息 ...
JNDI RMI 远程访问(LOG4j2漏洞底层原 ...
django中APIView里的dispatch和as_view ...
SAP FICO+MM测试环境
Jenkins发布uniapp开发的H5遇到的问题 ...
标签云
挺好的
服务器
快速回复
返回顶部
返回列表