前后端共享的常量如何统一管理
前端 JS ,后端 Java ,使用共享的常量的最佳操作是什么
如果手动同步的话,例如 Java 里面新加了一个常量字符串,然后手动往 JS 代码里面加一个,感觉很麻烦,违反了 DRY 原则。以后在 Java 端改了这个常量,就得去 JS 端改。如果忘了改,就容易出 BUG
Swagger (OpenAPI) 满足你的需求吗?在 Java 后端通过编写注释自动生成 Swagger.json ,前端通过 swagger-typescript-api 生成 type-safe 的 http client github.com/acacode/swagger-typescript-api
可以考虑卷一个通用配置平台前端经常改的文案也可以用,让产品自己去改
弄个 /api/constants?locale=en_US 前端 onInit 的时候加载到 sessionStorage
大厂都有配置中心这种东西,中小企业也可以学习一下
极简办法是用 json 写常量文件,然后写个小脚本生成 java 常量源码文件
丢到 redis, 前后端都能访问
配置中心,前后端都可以拉取
有一种事件是通过 idl ,不过前提是前后端通过 idl 来定义协议
楼上的各位应该是理解出问题了, 是要常量, 而不是要共享配置.比如新加一个 MAX_SIZE=1000, 多端共享, 配置中心是能共享 1000, 那 MAX_SIZE 不还得写吗你这个无非就是用一种 DSL 生成就好了, 说起 DSL 就不得不说 阿里云 OpenAPI SDK 你可以去看看
方法 1. 在服务端发布版本时,把所有常量与服务端的版本号一起发布,通过接口提供给前端使用。方法 2. 在编译打包前端代码时,就直接打包进前端代码。
楼上应该是理解出问题了, 是要共享配置,而不是光要常量,lz 都说了要改配置同步,要不然出 bug 了
提供接口:/GetShareVarSetting 给前后端调用,通过配置中心或管理后台修改。
前端,后端编译的时候,去配置中心拉取配置文件。
protobuf enum
都用 ts 然后 monorepo
当然是配置中心
共同编辑个 json 文件呗
数据字典...
这不就是几乎每个系统都会有的字典/配置表吗?
不考虑安全的情况下,我想到简单的方式是写到 cookie 里。
假如一个 Java 程序员,想转 Python 开发,他靠 AI 背了很多算法和面试题,又把 Python 的流行框架诸如 Flask 、FastAPI 等源码喂给 AI ,因…
遇到普遍问题是各种卡顿,16g 内存固态硬盘用个三四年还是卡顿最夸张是打开腾讯视频要好几分钟。把 ccleaner 等各种工具试一遍效果一般,除了重装系统各位大佬有什么优化建议…
Google 了一下 "Python" "CAS",只是搜到了一些关于 GIL 的 ATOMIC 操作。 但是觉得 Python 的 Lock() 又有点沉,有大佬知道有没有类…