当前位置:首页 > 体育

get请求 ASP.NET Core API 的Get和Post请求详解

转自:天蓝色空

cnblogs.com/zhan520g/p/10303225.html

前言

详细关注我们常用的Get和Post请求(取Http[动词] of。NET Core 2.2为方向,推荐这个属性路由)。如果要验证,可以直接使用VS2017创建ASP.NET核心API(。net core 2.2)并在DefaultController中操作它。

帮忙回忆一下,Get和Post有什么区别?

get参数通过url传递,post放在request body中。get请求在url中传递的参数是有长度限制的,而post没有。get比post更不安全,因为参数直接暴露在url中,所以不能用来传递敏感信息。get请求只能进行url编码,而post支持多种编码方式。get请求浏览器会主动cache,而post不会。get请求参数会被完整保留在浏览历史记录里,而post中的参数不会被保留。get和post质上就是tcp链接,并无差别。但是由于HTTP的规定和浏览器/服务器的限制,导致他们在应用过程中体现出一些不同。get产生一个tcp数据包;post产生两个tcp数据包。对于get方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);而对于post,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。

据此设置,相应的结果如下:

带参数的请求

1.默认模式

如果只使用id获取一条数据,可以实现如下图所示。这样,请求路径的操作就简单了。访问路径:api/values/id。大括号中的{}名称必须与参数名称一致。

如上所示,无法满足get的多个参数请求模式。如果有多个参数并且使用了get请求,则需要返回到旧的例程,如下图所示:

2.路由模板设置

同样,新的路由模板只需要携带方便请求的简单参数nameid,大括号中的{}名称必须与参数名称一致。

上图无法满足新路由模板get的多参数请求模式。如果有多个参数并且使用了get请求,则需要返回到旧的例程,如下图所示:

发布请求

没有参数请求

1.默认模式

如下图所示,因为请求路径是/api/values,所以整个控制器将寻找Post请求

请求路径:/API/[控制器]

但是,如果此时有另一个Post方法,并且新模板没有重命名,那么无论是否有参数,都会报错。api/values请求路径将只找到POST请求模式。因此,应进行以下路由模板设置

2.路由模板设置

与httpGet请求模式下的路由模板设置相同,也可以设置三个参数:模板、名称和顺序,后两个是可选的。

请求路径:/api/values/PostMethod

带参数的请求

1.默认模式

尝试了很多方法,最后发现以下可行,请求路径:/api/[controller]

Ajax和邮差请求都需要内容类型:“application/x-www-form-URL encoded”,重点是不能被【ApiController】和【FromBody】修改(暂时不评论,我觉得还是用Get比较好)。

Ajax请求代码如下:

$.ajax({

键入:“开机自检”,

接受:" application/x-www-form-URL encoded ",

url: "/api/post ",

content type:" application/x-www-form-URL encoded ",

数据:{

值':'张三丰'

},

错误:函数(jqXHR,textStatus,error through){

警惕(“出问题了!”);

},

成功:函数(结果){

}

});

2.路由模板设置

与httpGet请求模式下的路由模板设置相同,也可以设置三个参数:模板、名称和顺序,后两个是可选的。

请求路径:/api/[controller]/PostName

3.组合参数请求

如果同时存在复杂类型参数和简单类型参数,该怎么办,如下图:

此时,请求控制器必须具有显示属性[ApiController]。请求如下:

请求路径:/api/todo?名称=小明& ampid=20

4.动态类型

如下图所示,支持动态类型参数,content type:“application/JSON”

请求路径:/api/todo

总结

欢迎讨论,欢迎讨论,欢迎指出不准确之处,欢迎一起学习!我们也鼓励大家认真写博客,巩固自己和他人。

1.《get请求 ASP.NET Core API 的Get和Post请求详解》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《get请求 ASP.NET Core API 的Get和Post请求详解》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/tiyu/1043516.html

上一篇

冒充高富帅骗四女 以恐吓威胁等方式控制并强奸4名女网友

下一篇

陕西咸阳市彬县(塌陷)发生3.2级地震 震源深度0千米

台风路径实时发布系统:17号台风“古超”将在24小时内生成 或影响广东

  • 台风路径实时发布系统:17号台风“古超”将在24小时内生成 或影响广东
  • 台风路径实时发布系统:17号台风“古超”将在24小时内生成 或影响广东
  • 台风路径实时发布系统:17号台风“古超”将在24小时内生成 或影响广东
外籍船走私伪装中国船 没想到将“大庆”模板放反了

外籍船走私伪装中国船 没想到将“大庆”模板放反了

9月5日,一艘外轮为了卸下走私的白糖,不得不在船首印上“大庆”二字,伪装成中国船。没想到,外国船员不懂汉字,把“大庆”模板倒过来,被边防军和士兵注意到了。记者了解到,盐城边防军当场抓获走私嫌疑人9人,扣押走私嫌疑糖2.5...

台风路径实时发布系统:第19号台风“杜苏芮”生成 杜苏芮实时路径图

  • 台风路径实时发布系统:第19号台风“杜苏芮”生成 杜苏芮实时路径图
  • 台风路径实时发布系统:第19号台风“杜苏芮”生成 杜苏芮实时路径图
  • 台风路径实时发布系统:第19号台风“杜苏芮”生成 杜苏芮实时路径图
大功率led封装 大功率LED灯珠特性及技能参数

大功率led封装 大功率LED灯珠特性及技能参数

与低功率LED珠相比,大功率LED珠功率更高,亮度更亮,价格更高。小功率LED珠的额定电流为20mA,高于20mA的额定电流可视为大功率。一般电源号有:0.25w、0.5w、1w、3w、5w、8w、10w等。第一个亮度单位是lm(流明),低功率的亮度单位是mcd (milliCandeira...

电机功率等级表 Y系列电动机型号大全及详细参数(用处多多,记得收藏噢!)

  • 电机功率等级表 Y系列电动机型号大全及详细参数(用处多多,记得收藏噢!)
  • 电机功率等级表 Y系列电动机型号大全及详细参数(用处多多,记得收藏噢!)
  • 电机功率等级表 Y系列电动机型号大全及详细参数(用处多多,记得收藏噢!)

员工满意度调查表 精选年度员工调研报告参考模板(内附员工满意度调查表范文)

  • 员工满意度调查表 精选年度员工调研报告参考模板(内附员工满意度调查表范文)
  • 员工满意度调查表 精选年度员工调研报告参考模板(内附员工满意度调查表范文)
  • 员工满意度调查表 精选年度员工调研报告参考模板(内附员工满意度调查表范文)
初中生自我介绍范文 关注 | 初中生如何写好个人简历,附初升高个人简历模板

初中生自我介绍范文 关注 | 初中生如何写好个人简历,附初升高个人简历模板

期末考试临近。结果出来后,一些学校会开始签约。此外,当校园开放日在4月份左右时,许多学校都会伸出“橄榄枝”。这时候家长可以去找高中招生咨询老师。交流,交简历。如果合适的话,孩子被学校“看中”的概率会大一些,这样孩子就有机会给自己的中考上一份“保险”,有助于孩子取得好成绩。 这份简历包含一些基...

活动总结模板 幼儿教师个人工作总结、班级总结模板

活动总结模板 幼儿教师个人工作总结、班级总结模板

时光飞逝,转眼间,一个紧张而充实的学期过去了。又该做工作总结了。如何写出优美完整的工作总结? 幼儿园教师个人总结第一,肤浅的态度 积极参加学习和活动,遵守劳动纪律,热爱集体,服从分配,认真负责班级工作,在工作中力求求真、求实、创新。以积极热情的态度完成园区安排的所有工作。积极参加园区各项活动...