[请益] 如何组json丢给前端?

楼主: prag222 (prag)   2020-07-23 20:31:29
大家好
小弟最近到新公司
这边是采 前后端分离(vue.js)
但也不是做纯SPA
而是前端都采用ajax捞资料
之前是有做过伪前端跟全端
但我进公司其实是要兼前端整合
我到现在还搞不清楚
前端后端是怎么开发配合的
通常都有一套作业流程
因为之前在专案公司根本飞车党
现在看code卡卡的不舒服
看目前程式码后端是用字串模板组json
string jsonStr={"result":0,"productID":"{productID},"productNum":"{productNum}"}
捞出资料后用replace("{productID}","a1")取代
我看了以后 我想了天哪
资料量一多,又是新维护,天想这作法行吗?
觉得用这种作法,看资料不直觉,很慢很卡
另外我试着改著用CLASS物件以JsonConvert输出
不过json里面的资料又有阵列
用物件的方式好像又有点麻烦
jsonStr={"result":0,"subProduct":[]}
//像是subProduct会有多笔
不知道各位大大是怎么解决这种问题呢?
用字串组json跟前后端分离
加程式码有点乱,真的让我快不起来又不好改
事实上如果我是老板
好改好阅读扩充性维护性真的很重要
在专案公司的经验
开发时程基本上是已经压不出啥额外的利润
若高强度高结构化的程式码
改个不难的bug,五分钟内几乎可以改掉10分钟内上版完成加简易测试
维护成本才能省得出人力
作者: EricTCartman (阿ㄆㄧㄚˇ)   2020-07-23 20:33:00
如果你是老板, 如果我是富二代
作者: pepro (peproisgood)   2020-07-23 20:39:00
不是都用dict[key]=value 然后再concert to Jason sting吗?
作者: qoo1991 (笨哲)   2020-07-23 20:42:00
看到这篇字串组json再配上一篇 纯软好玩的地方就是怎么做都可以又门槛极低 for循环会就上路开工 ,导致各种软件专案各种恶心
作者: bill0205 (善良的小孩没人爱)   2020-07-23 21:02:00
不是都先订好格式 array组好再parse吗
作者: alihue (wanda wanda)   2020-07-23 21:04:00
通常都是用 framework... 直接 return 定义好的 object.需要的资料都塞进去 class 字段就好
作者: vi000246 (Vi)   2020-07-23 21:09:00
有阵列怎么了吗 要解析是前端的事吧
作者: leo5916267 (小叶)   2020-07-23 21:15:00
就有阵列跑回圈把字串做成object啊好玩的很
作者: ronny1020 (ronny)   2020-07-23 21:25:00
有阵列有什么问题?不就先把API规格开好,要怎样的资料就传什么为什么你还在烦恼要不要用阵列,规格讲好就照做呀物件里面放阵列,阵列里面有物件不是都很常见吗?
作者: achaos (热~~~~)   2020-07-23 21:41:00
就是Class物件+JsonConverter,回传json给前端解析.
作者: jimmily   2020-07-23 21:50:00
不懂阵列会有什么问题XD... 所以你觉得会有什么问题?
作者: GGFACE (ggface)   2020-07-23 22:02:00
好多问题
作者: jack529 (Jack)   2020-07-23 22:05:00
这乱写吧
作者: ronny1020 (ronny)   2020-07-23 22:06:00
是说你文章怎么整页空白?你CODE也写这样吗?
作者: king22649   2020-07-23 22:46:00
c#也有像django的全家餐吧 往swagger/openapi方向找 应该有
作者: roccqqck (ccqq)   2020-07-23 23:29:00
不都丢xml或json吗 要阵列也是包在里面吧丢要有字段名比较好解析啊如果你丢单纯阵列没有字段名的东西 然后说没问题 那......只能说old school
作者: TAKADO (朕没给的你不能抢)   2020-07-23 23:33:00
这个年代不是都定义好class,捞完资料组一组塞一塞直接return,剩下交给API框架去处理了吗?
作者: ZAbird (炸鸟)   2020-07-24 00:49:00
Not only xml or json. Have you ever heard proto buffer
作者: neo5277 (I am an agent of chaos)   2020-07-24 01:29:00
我怎么觉得,这个物件定义好,写个方法整理再抛出去就好了啊...
作者: rodion (r-kan/reminder)   2020-07-24 10:37:00
select ProductID as a1 ...
作者: mychiux413 (小邱)   2020-07-24 18:21:00
我没看code不清楚实际怎么组的,但自己组字串不走市面上的框架的话,要怎么确定不会被JSON Injection?跟开源专案相比,能有多少工程师测过?
作者: knives   2020-07-24 19:54:00
自己拼是十年前才在搞的事,现在都2020了别这样整自己跟别人
作者: pilor (Formosa)   2020-07-24 21:05:00
不是套件转一转就好? 前端不能解析是前端的事吧!json的格式就是标准的啊!
作者: Louis5213 (slash5213)   2020-07-24 21:49:00
总觉得是学生作品才会有这诡异的问题
作者: s06yji3 (阿南)   2020-07-24 21:56:00
学生作品可能都不会有这种问题...
作者: mychiux413 (小邱)   2020-07-24 22:48:00
我们家SQL也是用sprintf黏的,但没人知道严重性,都是小网站也没人在乎
作者: notimenofree (逼逼逼逼逼)   2020-07-25 15:39:00
阵列什么问题?
作者: vicjoyce0328 (咕咕咕)   2020-07-25 15:39:00
json 有array 也是个问题?
作者: lturtsamuel (港都都教授)   2020-07-26 00:39:00
2020还有人自己拼接json字串==
作者: DendiQ (貔貅)   2020-07-26 03:20:00
如果是 .net 直接回传物件就会帮你转换成对应的...要求 application/json 就会收到 json...
作者: wayne5668944 (wayne5668944)   2020-07-27 00:45:00
不是都是定义class然后concert to json吗...

Links booklink

Contact Us: admin [ a t ] ucptt.com