前言 随着前后端分离开发模式的流行,接口对接.联调成为常事,前端同事会经常问:我需要调哪个接口?这个接口数据格式是啥?条件都传啥? 对于一些紧急接口可能会采取沟通对接,然后补文档,其他的都会回一句:看文档. 那难道要一边开发一边写文档吗?早些年是这样的,但对于后端同事就很不自在了,代码敲的正起劲,突然又要去写文档(不然前端同事会时刻催或是来沟通),这样效率显然不是很高.而Swagger就能很舒服的解决问题(当然也有其他方式,挑一个比较火的),用Swagger大概会有以下好处: 良好的可视化界面,…
1.新建WebApi 2.安装Microsoft.AspNetCore.SignalR 3.新建一个集线器和消息类 using Microsoft.AspNetCore.SignalR; using System.Threading.Tasks; namespace WebApi.Chat { public class ChatHub : Hub { //SendMsg用于前端调用 public Task SendMsg(ChatMessageInfo info) { //在客户端实现此处的Sh…
前言 撸码需谨慎,裸奔有风险.经常在一些技术交流群中了解到,还有很多小伙伴的项目中Api接口没有做任何安全机制验证,直接就裸奔了,对于一些临时项目或是个人小项目还好,其余的话,建议小伙伴们酌情考虑都加上,毕竟接口安全这事可大可小. 通常会采用session.cookie.jwt.ids4等方式进行接口安全认证或授权,这里就先拿jwt说事,ids4知识点比较多,后续单独整理整理:对于session和cookie的方式就留给小伙伴们研究吧,因为最近接触或是和朋友聊到的项目中,使用的不多,所以就不单独…
在前后端分离的大环境下,API接口文档成为了前后端交流的一个重点.Swagger让开发人员摆脱了写接口文档的痛苦. 官方网址:https://swagger.io/ 在.Net Core WebApi中通过简单配置即可使用这一强大的功能. 1.新建一个API的项目 选择 API 项目 2.引入Swagger包..Net Core 中支持两个分别为Swashbuckle和NSwag.两者的配置大同小异.这里以Swashbuckle为例. 方式1:选择工具——Nuget包管理——管理解决方案的Nug…
目录: .NetCore WebApi——Swagger简单配置 .NetCore WebApi——基于JWT的简单身份认证与授权(Swagger) .NetCore WebApi —— Swagger版本控制 版本控制的好处是显而易见的,利用Swagger展示不同版本的API更能体现效果. 1.安装Nuget包:Microsoft.AspNetCore.Mvc.Versioning 2. 配置Startup类  2.1  添加新成员 ,用来获取API版本信息 /// <summary> //…
前言 .NetCore中提供的选项框架,我把其理解为配置组,主要是将服务中可供配置的项提取出来,封装成一个类型:从而服务可根据应用场景进行相关配置项的设置来满足需求,其中使用了依赖注入的形式,使得更加简单.便捷:另外和配置(Configuration)系统的无缝结合,使得服务更加灵活:而对于Options我们经常在注册服务中用到,相信只要接触过.NetCore中的小伙伴都知道,在注册服务的时候,经常在参数中进行Options的配置(如下图),可以直接的说:没有Options的服务不是好服务~~~…
前言 如今前后端分离开发模式如火如荼,开发职责更加分明(当然前后端一起搞的模式也没有完全褪去):而对于每个公司产品实施来说,部署模式会稍有差别,有的会单独将前端文件部署为一个站点,有的会将前端文件和后端站点整合一起部署:通常当项目规模比较大的时候,分开站点部署是不错的选择,管理和维护清晰,而对于一些小型项目,整合在一起部署为一个站点就显得相对比较方便,毕竟有时候开发是你.部署是你.维护也是你:如果选择整合部署,或者是项目包含静态文件(如图片)的访问,接下来的内容就有用武之地了~~~ 正文 Asp…
前言 权限管控对于一个系统来说是非常重要的,最熟悉不过的是菜单权限和数据权限,上一节通过Jwt实现了认证,接下来用它实现接口权限的验证,为什么不是菜单权限呢?对于前后端分离而言,称其为接口权限感觉比较符合场景(我是这么理解的):数据权限牵涉到具体业务,这里就不说啦! 正文 对于一些比较简单的系统,访问角色可能只有固定的几种,比如一些产品管理系统,通常只有管理员.维护员.用户三种权限,管理员拥有整个系统的权限,维护员只能访问产品维护相关页面和操作,用户只能访问产品的一些信息,如果类似这种情况,可以…
前言 MVC过滤器在之前Asp.Net的时候就已经广泛使用啦,不管是面试还是工作,总有一个考点或是需求涉及到,可以毫不疑问的说,这个技术点是非常重要的: 在之前参与的面试中,得知很多小伙伴只知道有一两个过滤器,而对其执行顺序了解的还是很模糊,少部分小伙伴甚至还没有使用过.这里就详细来说说这块的内容. 正文 来,直接上菜,然后再慢慢品:在Asp.NetCore 中,MVC有以下五种过滤器,根据执行顺序的不同,用于不同场景: 上图中大概的流程如下: 用户发起一个请求: 请求经过Asp.NetCore…
缘起 本文已经有了对应的管理后台,地址:https://github.com/anjoy8/Blog.Admin 哈喽大家好呀!又过去一周啦,这些天小伙伴们有没有学习呀,已经有一周没有更新文章了,不过晚上的时候,我也会看一些书和资料,这里给大家分享下: 1.之前简单的写了一个DDD+CQRS+ES的第二个系列<D3模式设计初探 与 我的计划书>,已经基本完结了,写的比较简单,然后我也找到了微软的一个官方的一个资料<CQRS Journey>,不知道有没有哪位小伙伴看,全英文的,我还…