V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fansangg
V2EX  ›  程序员

分享一个猪队友,都 8012 年了居然还有那么菜的后端可以混迹在互联网公司!

  •  
  •   fansangg · 2018-08-15 02:08:00 +08:00 via iPhone · 31453 次点击
    这是一个创建于 2274 天前的主题,其中的信息可能已经有所发展或是发生改变。
    今天快下班的时候,写完一个功能正准备测试,然后调接口的时候发现 token 过期了,然后重新登录。

    登录的流程之前走了不下一百遍,没想到居然报错了!查看日志发现是 json 解析报的错,如何我看了一下返回的 json 格式,发现地址列表返回的居然是空字符串

    ``` address:"" ```

    然后我找对接的后台同事说,我说空的话你要返回一个 jsonarray 啊,就是[]。



    然后等了 10 几分钟,后台的兄弟和我说改好了。然后我再调了一遍,依然是报错,然后看了一下返回的数据...

    address:"[]"

    我的天呐,真的是改好了,太优秀了!从业以来遇到过最优秀的同事!看起来也应该有 30 岁了,怎么还会那么菜!他是怎么混过来的!
    第 1 条附言  ·  2018-08-15 14:04:09 +08:00
    太优秀了,一觉醒来居然那么多回复,看到一堆人在说没有统一规范,没有好好沟通,我真是纳闷了,json 格式规范你们看过吗?还要订什么规范?我从业四年真的没见过这样返回数据的。
    第 2 条附言  ·  2018-08-17 10:50:18 +08:00
    各位「猪」们不要再回复了,各位有浏览论坛的时间不如好好学习,希望各位都能成为大牛,让世界以你为规范,加油!💪
    319 条回复    2018-08-20 03:09:59 +08:00
    1  2  3  4  
    broadliyn
        301
    broadliyn  
       2018-08-17 17:45:40 +08:00
    是人都会出错搞出一些低级 bug,如果不是因为后端开发 eq 低导致言语冲突的话,那么这个帖子纯粹就是个 lz 看不惯后端的吐槽贴。

    如果没有冲突的话,有什么事是不能通过语言好好沟通的?

    看了楼主的回复记录,横竖都是一股戾气啊。

    这种问题,花个一两分钟和后端的同事说一下就是了。结果你却花了大把的时间在这里发帖,怼天怼地怼 v 友,多不划算!
    xin1090
        302
    xin1090  
       2018-08-17 17:50:57 +08:00
    确实是后端的锅没得甩了,json 输出方式有问题, 我开发一般会先定义一个空的 address 数组, 然后查询处理,然后直接 json 输出出来是没问题的啊,也不需要特意判断。他可能判断数组为空了还特意加了一个"[]", 这个后端应该没调用过 json 吧。
    nothingtodo
        303
    nothingtodo  
       2018-08-17 18:00:51 +08:00
    @yy1984 错了就要骂人?你没犯过错?骂你猪队友,傻逼你愿意?
    wly19960911
        304
    wly19960911  
       2018-08-17 18:01:49 +08:00
    @KasonPasser #279 厉害厉害,你尽管发一些奇怪的数据,你看报错我 care 不 care 你。

    你做校验是安全,谁告诉前端要校验七七八八的数据问题了。
    wly19960911
        305
    wly19960911  
       2018-08-17 18:05:47 +08:00
    @wly19960911 #304 我并不是说前端不校验,你拿这些诡辩来说明什么问题,说明大家都有错?前端发错误的 json 格式,我也骂。

    错就是错,狡辩有什么用,你大可以和 leader 去谈,前端也要校验数据错误。
    allgy
        306
    allgy  
       2018-08-17 18:15:20 +08:00
    你太年轻了
    stardust21
        307
    stardust21  
       2018-08-17 18:17:39 +08:00
    @ramen address 有值返回的是数组,老哥
    a516307724
        308
    a516307724  
       2018-08-18 10:55:41 +08:00
    这问题我也遇见过。。。与其协商 还不如前端自己写个判断来的快
    虽然每次出调用都要做这些莫名其妙的判断
    ghostsf
        309
    ghostsf  
       2018-08-18 12:13:13 +08:00 via Android
    规范没有约束好。
    另外按这个字段的命名,为什么是空数组呢?
    geeti
        310
    geeti  
       2018-08-18 13:57:16 +08:00
    你们没有 code review 吗?
    loveour
        311
    loveour  
       2018-08-18 17:32:03 +08:00
    感觉,支持楼主的一般都是觉得楼主说的规范没问题;怼楼主的大都是因为楼主说话不太客气;还有一部分觉得虽然有问题但是问题不大。感觉争论的根本不是一回事,而且如果一开始只是吐槽也不会有人怼。
    zzpoik
        312
    zzpoik  
       2018-08-18 20:07:21 +08:00
    想起来一句,你行你上啊
    daryl
        313
    daryl  
       2018-08-18 20:33:44 +08:00
    @keepeye 这是两次 json 序列化之后的结果把?
    whoisghost
        314
    whoisghost  
       2018-08-18 21:31:50 +08:00
    @watzds #72 我司就有个这样的前端,徒手拼 json,我说你用的 Java 肯定有这个 hashmap 转 json 的库,但他就是要徒手拼...

    果真应了那句话:长得太帅的,一般都很菜。哈哈。
    TommyLemon
        315
    TommyLemon  
       2018-08-19 01:26:47 +08:00   ❤️ 1
    看了帖子和这么多评论,看来前后端关于接口的沟通问题比我碰到的还严重。。。

    用 APIJSON 就可以避免这种问题,前后端就可以愉快地玩耍了。
    自动将前端传的 JSON 参数转为 SQL 语句执行并返回结果,
    期间自动校验权限、结构、内容,自动防 SQL 注入。

    通过自动化 API,前端可以定制任何数据、任何结构!
    大部分 HTTP 请求后端再也不用写接口了,更不用写文档了!
    前端再也不用和后端沟通接口或文档问题了!再也不会被文档各种错误坑了!
    后端再也不用为了兼容旧接口写新版接口和文档了!再也不会被前端随时随地没完没了地烦了!

    在线解析
    自动生成文档,清晰可读永远最新
    自动生成请求代码,支持 Android 和 iOS
    自动生成 JavaBean 文件,一键下载
    自动管理与测试接口用例,一键共享
    自动校验与格式化 JSON,支持高亮和收展

    对于前端
    不用再向后端催接口、求文档
    数据和结构完全定制,要啥有啥
    看请求知结果,所求即所得
    可一次获取任何数据、任何结构
    能去除重复数据,节省流量提高速度

    对于后端
    提供通用接口,大部分 API 不用再写
    自动生成文档,不用再编写和维护
    自动校验权限、自动管理版本、自动防 SQL 注入
    开放 API 无需划分版本,始终保持兼容
    支持增删改查、模糊搜索、正则匹配、远程函数等

    后端接口和文档自动化,前端(客户端) 定制返回 JSON 的数据和结构!
    创作不易,GitHub 右上角点 Star 支持下吧,谢谢^_^
    github。com/TommyLemon/APIJSON
    TommyLemon
        316
    TommyLemon  
       2018-08-19 01:30:27 +08:00
    @TommyLemon 可以保证类型不会变哦
    reus
        317
    reus  
       2018-08-19 11:59:45 +08:00
    @dryyun 当然不行啦,连字段类型都搞不对,还做个屁开发,趁早转行别祸害人间比较好
    xuanbg
        318
    xuanbg  
       2018-08-19 13:09:04 +08:00
    你们返回值不按固定标准封装的么?无论错误还是正确,都是一个固定格式的 JSON 对象{"code" : 200, "message": "接口访问成功", "data":{...}}这样子,返回的数据就是 data 里面的那个对象或者数组。如果 code 不是 200,就抛出 message 里面的错误信息。
    说来说去,楼主你们还是缺少一些基础的规范。
    fansangg
        319
    fansangg  
    OP
       2018-08-20 03:09:59 +08:00 via iPhone
    @xuanbg 新手?
    1  2  3  4  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3425 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 11:44 · PVG 19:44 · LAX 03:44 · JFK 06:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.