文章用到的后台项目为 node.js + ts + sequlize + koa 实现的模板后台项目,地址给出,可以直接快速上手。打算接下来完善 redis 和 cookie 以及 session github.com/jiwenjie/No…
结合 node.js 搭建的后台服务来查看具体代理的路径值到底是什么
补充于20220311 项目实际情况遇到,我们组小姐姐在部署项目,前后台组件标识未一致,后台组件标识为 xxx, 前端给的组件标识为 XXX_UI,但是服务器代理配置如下
所以我有些疑惑,正常应该能够匹配前端那奇奇怪怪的标识,为什么404了,之后我再次实际操作验证
尝试浏览器请求如下
让我们看后台日志
结论知道了,转到后台服务器的时候会把下划线变成斜线,所以导致文件夹路径出错,访问不到内容。 专门做记录
nginx安装目录结构
tips:其中 template 是创建的静态目录,前端的 dist 文件夹就放在其中
该 dist 文件夹内容是打包 sync 项目得来,所以所有的资源请求都会有 sync 组件标识符前缀,示例如下
此时的配置文件中代理配置如下
而作为node服务器的后台,接收到的参数为如下所示,可以看到路径前缀都没变,只是把 ip 地址做了更换
接口全路径:****http://localhost:8099/sync/syncCaseItems/num
此时的配置换成如下所示,把校验代理增加了一段匹配
此时的 node 后台接收到的实际接口请求如下
可以看到,相当于把接口全路径中的 /sync/syncCaseItems/ 去除,直接在 3300 后面加了接口全路径的最后部分
此时的配置如下
注意没有在最后末尾加上 / 做分割。我们可以看下现在的接口请求
可以看到实际接口请求中也缺少了分割线,此处需要我们注意,如果没有实际的日志测试查看不好发现该问题。
那么我们在做最后一次改动,接下来就是见证奇迹的时刻
注意我们在末尾增加了 / 分割线
那么我们看浏览器运行效果
可以从后台服务器中看看日志部分
配置成功。