nginx 常见问题反向代理后访问 40412345location /api { proxy_set_header X-Real-IP $remote_addr; proxy_buffering off; proxy_pass http://bazijun.top:3002;} location /api 没有以 / 结尾,这会导致 nginx 将 /api 也作为代理路径的一部分, 2023-08-23
动态生成代码的 eval 与 Functionby: gpt4 eval() 和 new Function()都可以用于动态执行 JavaScript 代码,不过它们之间存在一些关键的差异。 作用域<u>eval()</u>在当前的词法作用域中执行代码,这意味着在使用 <u>eval()</u> 执行的代码可以访问、修改甚至声明当前作用域内的变量。而 <u>new Functio 2023-08-21
Nest 基于邮件验证码登录代码:nest-study\email-login 用户填入邮箱地址,点击发送验证码,后端会生成验证码,发送邮件。并且还要把这个验证码存入 redis,以用户邮箱地址为 key。 之后用户输入验证码,点击登录。后端根据邮箱地址去 redis 中查询下验证码,和用户传过来的验证码比对下,如果一致,就从 mysql 数据库中查询该用户的信息,放入 jwt 中返回。 而当使用到一些铭感信息,如邮件 2023-08-16
node 收发邮件发邮件是基于 <u><font style="color:rgb(37, 41, 51);">SMTP</font></u> 协议,收邮件是基于 <u><font style="color:rgb(37, 41, 51);">POP3</font></u> 或 & 2023-08-16
Nest / Swaggerswagger 是一种叫做 <font style="color:rgb(37, 41, 51);">openapi</font> 标准的实现,如果不喜欢完全可以直接划走,一般 api 接口的平台都是支持 openapi 的。 安装 npm install --save @nestjs/swagger main.ts 中配置启动,生产的文档路由上加 &l 2023-08-16
nginx实现灰度系统正经项目新版本代码的上线基本都会用灰度系统,可以逐步放量的方式来保证上线过程不会出大问题,开始可以 5%(即 5%的用户会使用到该新版本),没啥问题再放到 10%,50%,最后放到 100% 全量。 第一次请求的时候,会按照设定的比例随机对流量染色,也就是设置不同 cookie。再次访问的时候会根据 cookie 来走到不同版本的代码。 nginx 有反向代理的功能,可以转发请求到应用服 2023-08-15
Docker 重启策略Docker 是支持自动重启的,可以在 docker run 的时候通过 <font style="color:rgb(37, 41, 51);">--restart</font> 指定重启策略,或者 Docker Compose 配置文件里配置 restart。 有 4 种重启策略: <font style="color:rgb(3 2023-08-14
Docker 容器通信方式桥接网络Docker 通过 Namespace 的机制实现了容器的隔离,其中就包括 Network Namespace。因为每个容器都有独立的 Network Namespace,所以不能直接通过端口访问其他容器的服务。但可以创建一个 Network Namespace,然后设置到多个 Docker 容器,这样这些容器就在一个 Namespace 下了,如此就可以直接访问对应端口了。这种就是桥接网 2023-08-14
window端口权限被禁用docker 容器服务起不了,node 端口开不了。使用以下 .bat 脚本即可 12345%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(wi 2023-08-14
class的 get、set修饰符class 中的属性前标注了 get set 即被称为 **访问器属性**。其他的都是**数据属性** 访问器属性和数据属性有一些区别,例如: 访问器属性可以让你在读取或修改对象的属性时执行一些验证、计算或日志记录等操作,而数据属性不能。 **访问器属性可以让你直接操作对象的属性,而不需要调用方法**,这样可以使代码更简洁和清晰。 访问器属性可以让你实现一些伪属性,也就是说,你可以定义一个没有实 2023-08-10