#W1.使用DNS服务商提供的跳转
#2.自己服务器设置重定向规则
本质上两种模式一样,只是第一种是使用服务商的服务器跳转,省了自己服务器带宽
月份:2020年6月
读ASP.NET Core与RESTfull API开发实战第八章
1.Http认证的常用两个状态码:
401未授权,说明登录信息无效。
403拒绝访问,登录信息正确,但权限不足拒绝访问
2.消息格式:
在消息头中Authorization:
3.认证常用三种格式:凭证不同,认证过程不同
a)Basic ,凭证中是用户名密码,一定要用https这种方式传输
b)Digest,凭证中包含信息和md5(类似支付中常用的md5验签)
c)Bearer,常用于Oauth2.0中,也常见于基于Token的认证中,常用的方式类似于Basic,所以一定要用https这种方式传输
4.Bearer认证
a)认证流程,从流程中可以看到解耦客户端与应用程序。
b)常见的两种Token类型:引用类型,自包含
引用类型:在服务端根据自己定义规则生成的字符串,通常存储在数据库中与用户信息关联
自包含:Token自身包含用户信息,服务端就不再需要访问数据库,JWT是最常见的自包含类型Token.
c)JWT组成
5.asp.net core中实现
单表数据量大的情况下,如果改表结构
问题:当单表数据量很大时,修改表结构,会有表锁让此表无法使用,也可能会操作超时,改表不成功。
1.加字段锁表时间非常短,选对运维时间加字段
2.删除/修改表字段表锁很久
3.离线改表,让业务说明维护时间:
a)方案,在范围时间内直接简单sql,时间要提前预演
b)方案,创建临时表,自写sql,迁表进新表完成后,rename 表名
4.在线改表,
a)使用工具pt,gh-ost
b)创建临时表,自写sql,迁表进新表完成后,rename 表名,迁完第一批后需要再次迁移这段时间内的增量数据。
netcore的Dockerfile
#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1 AS base
WORKDIR /app
EXPOSE 80 #显示暴露的端口,只是显示说明
WORKDIR /app #进入现在所在的容器工作目录
COPY zyhand.webapi . #使用当前宿主的相对路径复制
ENTRYPOINT ["dotnet", "ZYHand.WebAPI.dll"] #如果没有指定,默认监听端口是80
在
分布式系统下的数据一致性和幂等性
读ASP.NET Core与RESTfull API开发实战第四章
1.仓储模式
2.
读ASP.NET Core与RESTfull API开发实战第三章
1.program类
2.start类
3.使用autofac代替,并使用程序集注入
4.使用ActionResult代替IActionResult
5.模型验证
6.中间件与过滤器的区别:
关注点不同,中间件是aop出来与业务无关,与整个应用程序有关;过滤器aop与业务更贴近,因为是与Action的执行前后相关
读ASP.NET Core与RESTfull API开发实战第二章
1..netStandard与.netcor,.netfw,mono关系
netcore主要组成:coreCLR,coreFX,coreCLI,Roslyn
2.asp.net core优点及特点:
a.跨平台
b.内置依赖注入
c.中间件模式
d.配置可切不同环境
e.支持虚拟容器
f.web ui与api统一框架
3.重新认识controller类的结构
读ASP.NET Core与RESTfull API开发实战第一章
1.RESTful使用三要素:HTTP方法,HTTP消息头,HTTP状态码
2.API名词的重新认识
3.HTTP协议相关:
a)协议流程,与TCP关系,HTTPS流程
b)URL,URL与URI区别
c)MIME类型
d)HTTP请求头
e)HTTP方法
f)HTTP状态码