关于Lind.DDD.Api客户端的使用与知识分享

时间:2024-01-06 18:17:20

回到目录

关于Lind.DDD.Api的使用与客户端的调用

作者:张占岭

花名:仓储大叔

框架:Lind.DDD,Lind.DDD.Api

目录

Api里注册全局校验特性 1

Api中设置全局的Cors跨域资源访问 2

Api直接返回Json,而不是Xml 2

Api中Controller的Get,Post,Put和Delete 3

Api中Controller几大方法重载要注意的 3

客户端如何调用Api 4

对ResponseMessage的结果按需返回 5

对ResponseMessage添加TotalRecords支持分页集合 6

客户端如何为服务端传输加密密钥 7

Api里注册全局校验特性

关于Lind.DDD.Api客户端的使用与知识分享

Api中设置全局的Cors跨域资源访问

关于Lind.DDD.Api客户端的使用与知识分享

关于Lind.DDD.Api客户端的使用与知识分享

Api直接返回Json,而不是Xml

关于Lind.DDD.Api客户端的使用与知识分享

添加全局过滤器之后,再访问API之后就被响应成JSON串了

关于Lind.DDD.Api客户端的使用与知识分享

Api中Controller的Get,Post,Put和Delete

Get:一般用于读取资源

Post:用来添加资源

Put:用来更新资源

Delete:用于删除资源

Api中Controller几大方法重载要注意的

一、方法类型相同,名称不同,个数相同,这种重载不被允许

关于Lind.DDD.Api客户端的使用与知识分享

二、方法类型不同,个数相同,这种重载可以

关于Lind.DDD.Api客户端的使用与知识分享

三、方法类型不同,个数相同,但名称相同,这种重载不可以

关于Lind.DDD.Api客户端的使用与知识分享

客户端如何调用Api

读取资源

关于Lind.DDD.Api客户端的使用与知识分享

添加资源

关于Lind.DDD.Api客户端的使用与知识分享

更新资源:

关于Lind.DDD.Api客户端的使用与知识分享

对ResponseMessage的结果按需返回

对于一个对象,一个集合,它在返回到客户端时可能有些信息是无用的,如果把他们返回那就是多余的,造成了不必要的数据传输的损失,所以我们应该按需序列化字段,而不是把方法所有字段都返回到客户端,而返回的字段列表,由客户端的请求参数决定。

关于Lind.DDD.Api客户端的使用与知识分享

关于Lind.DDD.Api客户端的使用与知识分享

对于ReturnMessage的返回,需要指定要过滤的字段,这些返回到客户端就只有指定的字段了,需要注意的是,我们的每个字段之间需要用逗号分割,这是一个约定。

关于Lind.DDD.Api客户端的使用与知识分享

对ResponseMessage添加TotalRecords支持分页集合

如果分页返回的数据,我们在前台需要知道集合的所有数量,然后和当前页码及每页显示的数据量来构建我们的模块。

在Body的set块中为TotalRecords属性赋值

关于Lind.DDD.Api客户端的使用与知识分享

然后ReturnMessaged在序列化后,将TotalRecords响应到客户端。

客户端如何为服务端传输加密密钥

Lind.DDD框架里为我们提供了简单的方式进行密钥串的长成,你只需要将参数到到NameValueCollection键值对里,然后调用密钥生产方法,最后使用它自己的扩展方法ToUrl()来进行最终地址的升成。

关于Lind.DDD.Api客户端的使用与知识分享

验证成功,返回如下结果

关于Lind.DDD.Api客户端的使用与知识分享

当验证不合法时,则返回如下结果

关于Lind.DDD.Api客户端的使用与知识分享

而服务端可以通过全局的过滤器对URL地址进行解析,并校验它的合法性!

好了,本讲主要是一些基础知识的介绍,我们在使用webApi开发项目过程中,还会不断的总结。

回到目录