API路径问题 #1031
-
我发现后端代码中注册的路由路径前缀并没有/api/,但是在web页面访问的路径是有/api/前缀的,我尝试在后端代码里面找到相应的逻辑但是没有发现。例如:注册路径为 [POST] /authority/getAuthorityList,客户端请求路径为: [POST] /api/authority/getAuthorityList |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
那个/api/是proxy出来的,通常为了防止同源问题会用 nginx(dev时用vite)把后端的地址代理到前端server的host下。 举个例子:
此时在浏览器访问时,浏览器请求是发给 localhost:
此时前后端在同一个域下就没有同源问题了。 gin-vue-admin/web/.env.production Line 5 in fc306be gin-vue-admin/web/.env.development Line 4 in fc306be 注意这个rewrite: gin-vue-admin/web/vite.config.js Line 65 in fc306be 补充一下:
|
Beta Was this translation helpful? Give feedback.
那个/api/是proxy出来的,通常为了防止同源问题会用 nginx(dev时用vite)把后端的地址代理到前端server的host下。
举个例子:
8888
8080
此时在浏览器访问时,浏览器请求是发给 localhost:
8080
的。如果不配置代理,那么发起ajax时,浏览器直接去请求 localhost:8888
就会收不到数据,因为跨域了。因此用vite或nginx把 localhost:8888
代理到 localhost:8080
下:此时前后端在同一个域下就没有同源问题了。
参考:
gin-vue-admin/web/.env.production
Line 5 in fc306be
gin-vue-admin/web/.env.development
Line 4 in fc306be
注意这个rewrite:
gin-vue-admin/web/vite.config.js
Line 65 in fc306be
…