公司后端写的接口部署到测试环境了,访问之后发现跨域了,把浏览器的跨域截图发给后端开发,问我报什么错了?难道都 2026 年还不理解跨域是什么原理吗?还需要我给他科普一下吗?心累。
1
Hilong 1 小时 49 分钟前
还有这么菜的开发吗,这种还能混下去真幸福啊
|
2
programMrxu 1 小时 48 分钟前 之前我司有个人把解决跨域写在了年会上
|
3
lusxh 1 小时 42 分钟前 via iPhone 菜鸡互啄
|
4
yakumo520 1 小时 42 分钟前
想知道后续那个后端怎么处理的跨域(狗头)
|
5
Monad 1 小时 42 分钟前 via iPhone
你别说 如果是 server 开发来顶替 web 开发
确实很多浏览器的行为不是很清楚 |
6
lscho 1 小时 34 分钟前
虽然我觉得很菜,但是部分螺丝钉企业还这能理解。。。因为跨域本身是浏览器的行为,如果部署的时候再用容器化技术,响应头都是运维来设置,开发测试的时候前端再用个反代,后端没接触过也正常
|
7
Cruzz 1 小时 34 分钟前 前端自己配个代理不就完事了么。自己解决就没那多 b 事了。
|
8
giter 1 小时 33 分钟前
如果是纯后端,没有深度理解跨域也很正常,感觉很多跨域问题的帖子都是前端开发提出来的
|
9
ufan0 1 小时 31 分钟前
其实大可不必如此,让生活美妙些!
直接告诉他是跨域的问题让他解决即可,若知会过后仍来问你,再挂吧。 |
12
ebushicao 1 小时 21 分钟前
我多年前实习的时候也碰到过一个这种后端,技术拉完了,登录接口来个 url 参数传账号密码,还要明文。然后每天都会提到他的摸摸唱经历,还好那家公司一个月不到就倒闭了。
一说又想起来,那老板也是奇葩,国外留学回来的一个女的,上来说什么武汉有几千万环卫...过于愚蠢我都没有插话。 |
13
Incrus 1 小时 20 分钟前
这个为啥要截图发给后端开发?为什么部署到测试环境才发现跨域?不是开发环境就应该知道跨域了并通过 dev server proxy 解决了?测试生产配个 ng 反代自己解决就是了。你还心累上了🤪
|
14
bli22ard 1 小时 17 分钟前
有没有可能是你的问题
|
15
ARIInV2 1 小时 16 分钟前
@programMrxu 咱们该叫啥来着
|
17
xxyang 1 小时 12 分钟前
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Headers *; add_header Access-Control-Allow-Methods *; |
19
YanSeven 1 小时 11 分钟前
从描述上无法判断楼主是后端还是前端
|
20
Garwih 1 小时 10 分钟前 才十几个回复就有好几个不懂的了,跨域问题让前端配代理🤣。
AI 淘汰的人还是太少了。 |
21
ronyin 1 小时 7 分钟前
这玩意对于 AI 就 1 分钟解决的事情。。
|
22
lujiaosama 1 小时 7 分钟前
@xxyang 无条件放行,这么勇?
|
23
xxyang 1 小时 5 分钟前
@lujiaosama 真的要搞你,岂是几个头能拦住
|
24
lujiaosama 1 小时 4 分钟前
@xxyang 别的不说,至少对象存储得拦一下吧。
|
25
xd666888 1 小时 1 分钟前
正确方法是前端配置代理+后端配置 nginx 转发解决跨域。所以这不是前后端两个人的问题么
|
26
sagnitude 57 分钟前
@Garwih 测试环境本地 hosts 写个转发,本地 nginx 监听,转发的时候强行加个头,咋不行了,又不是发布环境,如果后端真不懂,你等他搞还真不如本地转发下
|
27
andyskaura 49 分钟前
@Garwih op 是测试环境发现跨域,这样解决也没啥问题啊
|
28
lscho 48 分钟前 @Garwih 感觉是你不懂,AI 淘汰的说不定就是你咯。。。
开发环境下,跨域一直都是前端配置的,比如 vite/webpack 都提供的有配置 上线之后,有 BFF 层的项目也是前端处理的。没有 BFF 层的还有一部分是运维处理的,真让后端处理的才是比较少的。 而且因为有 access-control-allow-headers 这个配置,具体怎么配置,一定是有前端参与沟通的指定的,反而是后端不一定会管这个事。 |
29
tf2 46 分钟前
不要笑。现在 AI 厂家原生支持跨域的有多少?
甚至明明可以 API key <-> origin 双向绑定加强安全性的。 |
30
zgsi 46 分钟前
接口部署到了测试环境你不应该在本地代理测试环境或者也发到测试环境吗
|
31
Cruzz 38 分钟前
@ARIInV2 #16 上纲上线来说,这是测试环境,如果你用测试环境页面访问测试环境接口跨域,找后端,找运维都没问题,自己本地连测试环境接口跨域不很正常,不解决不也正常?不上纲上线,你都说了他菜,费半天劲解决不了,浪费时间浪费精力,自己反代一下很困难么,不会就别说人家菜了。最烦 bb 赖赖的。越菜的 b 话越多。
|
33
maichael 35 分钟前
- 如果你的应用本身只是小应用,用的人不多,那么你用「 BFF/反向代理」简易搭一个都没问题
- 但是如果你的应用相对比较大,复杂度比较高,我觉得还是应该老老实实配置 CORS ,多一层「 BFF/反向代理」反而会带来很多麻烦,包括性能、成本,还有「代理」本身还需要监控、管理,错误排查链路更复杂,SSE 之类支持更复杂等,除非你真的需要「 BFF 」,不然的话,加多一个实体就是加多一层麻烦。 |
34
shaozelin030405 35 分钟前
@Cruzz 配代理如果出了问题,会说你为什么配代理,导致安全扫描 balabala 有问题。还是得后端自己启动,前端不管,后端想办法去
|
35
liumao 30 分钟前
|
36
maichael 30 分钟前
另外,测试环境跟生产环境有架构上的差异会导致测试环境丢失很多它原来能起到的作用。
|
37
yuanxiaosong 28 分钟前
这玩意不都是运维搞吗,运维会在 nginx 处拦截,判断是否是公司域名或者白名单域名,使用“add_header Access-Control-Allow-Origin 请求域名;”设置跨域,并且还要使用"proxy_hide_header Access-Control-Allow-Origin;"隐藏后端返回的跨域,防止双重跨域并且禁止使用*设置跨域值。
|
38
Cenat 27 分钟前 要么一直做前后端同源的项目
要么大公司出来的,这种事情有 SRE 来负责 要么做的项目 nginx 反代 cors 配置都是别人弄好了 不需要他关心 我也不知道楼里在优越什么。。。 |
39
Sezxy 25 分钟前
日常前端吐槽后端不懂 CORS
|
40
Garwih 24 分钟前
@sagnitude
@andyskaura @lscho #28 楼主都说了上测试环境了,明显开发环境已经配了反向代理。测试环境还让前端用 vite/webpack 配代理就是完全不懂 CORS 。作为 Web 后端不懂 CORS ,要么就是纯螺丝钉,工作过的公司都是运维弄好。要么就是菜了。 |
41
yuanxiaosong 21 分钟前
正式、开发和测试环境跨域由运维配置,前端本地联调两个方案:
1. 让运维把 localhost/127.0.0.1 加白名单; 2. 前端自己启动一个 nginx 再反代; 如果公司有明确的运维,除非你直接调用后端服务,不走任何代理,否则跨域不该后端管(我司后端在代码中手动写跨域也不生效),后端兼管反代程序的另算; |
43
giter 18 分钟前
@Cenat 正解,很多人以为自己遇到过跨域问题并且解决了跨域问题,就想当然以为别家公司也有很多人应该懂,从来没去考虑过为啥很多人都不懂,难道大家伙天天都要面对跨域这个问题吗?有些操作后端开发其实都不需要处理的,不懂也正常,不要简单套用自己的规则强加给别的开发
|
44
angeni 18 分钟前
我也不是懂哥什么都懂,但是我感觉都是打个螺丝没必要比谁更专业。
一个茅坑能有不同物种的大便吗? |
46
andyskaura 12 分钟前
@Garwih #40 你的主题已经飘了,以及,跨域问题你聊到反向代理,vite/webpack ,有一定联系,但还是很奇怪,不太确定。 建议你多回复几条大家再看看
|
47
rich1e 11 分钟前
|
48
bzj 8 分钟前
标准方案就是前端自己配代理服务,前端既然要搞工程化就要解决这种问题,后端不仅不用帮你解决跨域而且还要限制死,毕竟这是运维的事
|
49
flytsuki 6 分钟前
|
50
hushuikun 6 分钟前
|
51
bzj 3 分钟前
@lscho #28 有时候感觉前端挺迷惑的,本来专心写写页面改改样式就好了,数据就让前后端联调,他们非要搞一套工程化,一上来就安装各种服务各种包,越搞越复杂,但是稍微涉及到点原理的他们又理解不了
|