关于前后端联调,后端问题需要依赖于复杂页面交互,是怎么接入前端来调试后端问题的呢

2025 年 5 月 22 日
 liudewa
  1. 我是前端开发,现在对接不同的部门的后端开发,而且我们是有开发服务器的,我这边调试都是接入开发服务器的地址(只要后端是最新的)不用依赖后端同事

  2. 部门 A 后端开发,每次后端出现问题,都要我启动前端本地项目来接入他本地进行调试问题(耦合性也太大了,我本来在做其它项目,突然要我启动前端,每次去厕所在拉屎,会让我启动前端服务)

  3. 部门 B 后端,从开发开时就从没连过他们本地服务,他们有变动会更新后端服务就很舒服(有个疑问,对于后端需要前端页面复杂交互来调试接口是怎么来调试的呢)

5048 次点击
所在节点    程序员
65 条回复
Torpedo
2025 年 5 月 22 日
一般都是反过来的。因为后端是比较好构造逻辑调试的。反而前端是不容易构造一些数据和环境的。
这点从单测上就能看出来
v21984
2025 年 5 月 22 日
后端对着 postman 自动脑补画面,这是基本功
kytrun
2025 年 5 月 22 日
我是使用浏览器扩展 https://github.com/g0ngjie/ajax-proxy 重定向前端的接口到本地服务器(服务需要配置一下 cors ),所有在原本的前端页面发起的请求都过来了
demonzoo
2025 年 5 月 22 日
自己发 api 测啊,postman 是干啥使的?
lozzow
2025 年 5 月 22 日
话说回来,好多前端连 copy as curl 都不知道
birdegg
2025 年 5 月 22 日
我是后端,如果线上的开发环境不理想,对于特别复杂的页面,涉及好多个接口好几个后端服务的,我都是自己本地启动前端调试
qinqiuxu
2025 年 5 月 23 日
我同事都是在她电脑本地启动前端项目,自己调用页面调试的
wangritian
2025 年 5 月 23 日
A 就是有问题,哪怕是刚接触项目要从界面熟悉接口,也应该找楼主问前端编译好的项目和启动方式,而不是强奸楼主的时间
xuanbg
2025 年 5 月 23 日
简单,让运维在开发环境也正常部署前端代码不就完了。
liudewa
2025 年 5 月 23 日
@wangritian #48 三年起步
liudewa
2025 年 5 月 23 日
@lozzow #45 之前都是 打开浏览器请求 址 和 参数 一个一个复制的
liudewa
2025 年 5 月 23 日
@xuanbg #49 没有运维 服务器密码给你 前端后端分开部署自己的
CodeCodeStudy
2025 年 5 月 23 日
A 比较水,一般是用 postman 之类的 http 客户端工具测试接口有没有问题
spritecn
2025 年 5 月 23 日
我特别想知道,没有相对稳定的开发测试环境的话,你们测试都是怎么工作的
liudewa
2025 年 5 月 23 日
@spritecn #54 有开发环境,但开发环境前后端都是打包部署后的,现在问题是后面想连本地调试
kaf
2025 年 5 月 23 日
想本地调试喊他自己运行啊,装个 node 又不麻烦
vvtf
2025 年 5 月 23 日
看样子 op 和我司的环境比较像, 测试开发环境在公网, 不能连接本地, 本地能访问测试开发环境.
而且后端还是微服务, 网关, 授权, 注册中心等都在公网(由于公网不能访问本地所以注册上去也没用).
这种问题其实很简单, 这是我的解决办法:
后端只需要本地启动一个 nginx 就行了,
除了需要 debug 的微服务代理到本地, 其他所有的全部走测试,开发环境;
比如测试环境在 test.com, 现在后端觉得有一个微服务 svc-x 有问题, 需要联调,
可以这样配置:
```
server {
listen 7004;
server_name localhost;

# 这里主要是看网关路由的配置是什么, 一般现在前端和后端的路由是有区别的
# /svc-x 的服务全部走到本地, 并且去掉/svc-x path
location /svc-x/ {
proxy_redirect off;
proxy_pass http://localhost:8080/;
proxy_connect_timeout 15s;
proxy_send_timeout 15s;
proxy_read_timeout 15s;
proxy_set_header X-Forwarded-Proto http;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

location / {
proxy_pass http://test.com;
proxy_connect_timeout 15s;
proxy_send_timeout 15s;
proxy_read_timeout 15s;
proxy_set_header X-Forwarded-Proto http;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
```

这样随时使用开发测试环境的前端以及后端鉴权等.
alleluya
2025 年 5 月 23 日
@lozzow #45 你以为后端知道? 我发一个 curl 还在里面一个一个扒入参呢
Tdy95
2025 年 5 月 23 日
之前 leader 推广过前端微服务,我写了个 Chrome 扩展插件,用于测试线上环境的,本质上就是通过 Chrome 的插件来修改请求调用的网关地址。

同样的,可以让后端浏览器装个插件,把请求转发到他本地服务,就不需要依赖前端了
lucasdev
2025 年 5 月 23 日
以前用的这个 Chrome 插件,https://github.com/yize/xswitch ,一把抓住前端请求,顷刻炼... 转发到本地后端。

不过这个插件现在不维护了,使用油猴脚本、或者 whistle 之类的代理工具也能轻松实现。或者让 ai 给你写个 Chrome 插件来转发。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/1133477

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX