
1 duhb 288 天前 500 个参数?那得写多大的数据模型,model 里的参数都是一一对应的,否则 json 解析框架解析不成功,转换不成 model 实体。 |
2 nice2cu 288 天前 参数太多了 不是很合理的 后端咋知道 n 代表那个业务字段 估计还是手动维护 |
3 asdhak 287 天前 产品经理提需求就行了,咋还指导上接口了?那不就外行指导内行了嘛 |
4 Chemist 287 天前 让产品直接说希望这么实现的目的是啥。什么业务问题必须要这样的实现? 产品经理又不是架构师,只需要描述业务需求,不应该染指软件设计。 |
5 woodfizky 287 天前 这种应该是把参数解析成了模型,这个模型是静态的。 如果要改成动态的估计用 Map 可以支持?但是数据类型不确定,就算确定可能逻辑要重新写一些。 |
6 Lisa9527 287 天前 这就回归到开发设计的问题了 |
| 7 nekomiao 287 天前 via Android 直接 map 或者 jsonobject 接收了再解析 key 不就行,写起来是丑了点有啥改不了的。分分钟就改完了,要不是他菜要不是他懒 |
8 fredweili 287 天前 改一下这个结构,用两个数组,keys 和 values ,传输时候用逗号什么分割序列化,再加一个 count 校验 这也比这么大的 map 好看多了,变来变去的 kotlin 不好写 model |
9 luwies 287 天前 不应该改成数组存放这 500 个参数吗?我也会说改不了。。。 |
11 lw10645 287 天前 改不了,谁家好人这么写代码 |
12 fregie 287 天前 谁着急上线谁想办法呗 |
13 internelp 287 天前 要不然这么改 ``` { "count": 2, "data": [ { "key": "xxx1", "value": "v1" }, { "key": "xxx2", "value": "v2" } ] } ``` |
14 han3sui 287 天前 我们之前也是,因为 js 的兼容性太好,导致后端写接口会放飞。 然后多端上线的时候,遇到安卓、ios 这种数据类型要求比较严格的,经常会冲突。 |
15 FireKey 287 天前 我之前接过一个接口,每个状态的结构都不一样,那才是真奇葩 |
16 xz410236056 287 天前 @internelp 一个效果,只要用 ORM ,你就得把 key 转成固定的属性,难道一个类 500 个属性吗。这玩意应该用数组。如果每个 key 不一样,那也应该是数组里面套字典 |
17 qxdo1234 287 天前 写成动态数组去维护比较好一点吧,[{key_name:xxx, key_value:xxx, key_type:xxx}] 这样子的,这样前端后端解偶了,后续也不会遇到参数变更,两边都要改接口,只要两边各自去写自己的逻辑就好了。 |
18 guanhui07 287 天前 我跟 13 楼的一样 |
19 kookpua 287 天前 直接用 json 吧 |
20 jiahailiang22 287 天前 17 楼 正解 |
21 Light3 287 天前 没有说明传输数据是直接再次请求接口 还是本地操作 然后请求对应数据 如果参数过多 还是本地操作的话 确实和 2 个参数差距有点大 发怒也是必然的 再者 前端是快 安卓还要打包 加固.. 所以外行领导内行就是这样 没有思考 |
22 ramcasky 287 天前 我最近也是遇到 JAVA 类型定的很死 就很奇怪 字符串的硬要前端给整型,整型的硬要我给字符串,想了想我说都给 string 比较通用,他说改不了,有点纳闷那么不灵活的吗 |
23 meeop 287 天前 不会用 json ,list ,甚至暴力写一个 xxxN1-xxxN100000 的结构去解析吗 都 ai 时代了,只要逻辑能说清楚,代码多点也没啥 |
24 southsala 287 天前 你们这些野路子看着真的火大 |
25 julyclyde 287 天前 安卓又不是 C 语言,哪儿来的结构体这种东西? 关键是 app 已经发出去了啊,你就算再改也是下一个版本了 那已有版本的用户如果赖着不升级咋办? |
26 xiang0818 287 天前 xxxN1 ,这种传参数,谁教你的 |
27 zjsxwc OP @xiang0818 #26 历史遗留代码就这么写的啊, 我不是不想改成 `{"id": 1, "key": "xxx", "value": 123}` 来 代替 "xxxN1":123 ,就是原先代码已经这样了,我也懒得改,影响我下班。 |
28 icyalala 287 天前 所以楼主不是野路子,楼主知道什么结构是合理的,但是因为 “懒得改,影响我下班” 而吧工作量转移给客户端 |
29 liqingyou2093 287 天前 使用数组,同 17 |
30 BwNVlwSq 287 天前 确实抽象... |
31 soulflysimple123 287 天前 碰到这样前端确实头大 |
32 20015jjw 287 天前 via iPhone 动态改名字是什么脑瘫操作 |
33 IvanLi127 287 天前 安卓应该起一个新的后端服务做中间层代理服务,把数据重新序列化成数组格式,然后给运维部署到服务器上,然后再继续开发。 |
34 sampeng 287 天前 不是技术问题。。。谁发飙谁去找产品说去。。关你啥事。。 |
35 AlexBob 287 天前 json 啊,转成 map 对象,java 要放飞还不简单,而且 android 里面各种序列化,比 JS 还多. spring 都支持 map 接参,只要不想后期维护,就用各种泛型接. 前端有动态表单,我们有泛型接参就这么简单,逻辑都不用后台处理 |
36 hm279 287 天前 需求变动,给出修改时间,延迟上线,把锅甩回去给产品啊 |
37 jingrui 287 天前 很多 javaer 只知道参数是 object ,不会处理 map 对象,菜 |