HttpClient是一个被封装好的类,主要用于Http的通讯,它在.net,java,oc中都有被实现,当然,我只会.net,所以,只讲.net中的HttpClient去调用Web Api的方法,基于api项目的特殊性,它需要有一个完全安全的环境,所以,你的api控制器看起来有点特别,只有5个方法,而且都是标准的http方法,我觉得这种设计很不错,很清晰,而且为了实现安全性,它不支持使用传统的表单数据,取而代之的是FromBody参数,它指拿HttpRequestMessage里参数,而不是所有的Request数据,这是基于安全方面的考虑。
一 Api接口参数的标准性
Get方式,可以有多个重载,有多个参数
POST方式,只能有一个参数,并且用[FromBody]约束,如果有多个参数,需要以对象的方式进行传递
Put方式,只能有两个参数,其中一个是通过Request.QueryString方式进行传递的,作为要更新对象的主键,别一个是[FromBody]字段,也是一个字段,如果多个字段需要把它封装成对象
标准接口如图
二 调用方,参数的标准性
在客户端进行接口调用时,我们以网页端为例,看一下网页端进行ajax跨域请求的代码
Get方式
post方式
三 在控制台中实现Get方式获取接口数据(只有异步实现)
四 在控制台中实现Post方式提交数据(只有异步实现)
五 在控制台中实现Put方式提交数据(只有异步实现)
文章来自:源码在线https://www.shengli.me/api/40.html