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

手机应用的后端与网页的后端开发有什么区别?

  •  
  •   vcfghtyjc · 223 天前 · 4433 次点击
    这是一个创建于 223 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如需求或设计上是否有不同?如果有兴趣,也可以聊聊共性。

    41 条回复    2021-11-22 17:24:10 +08:00
    janxin
        1
    janxin  
       223 天前
    = =难道你会为了两个相同的功能因为平台不同写两份不同的代码么...
    huyujievip
        2
    huyujievip  
       223 天前 via iPhone   ❤️ 1
    面向接口编程,共用同一套后端
    cvbnt
        3
    cvbnt  
       223 天前 via Android
    前后端分离情况下,同个功能基本上是同一个接口,无非是各个前端传递的参数不一样
    ila
        4
    ila  
       223 天前 via Android
    身份认证区分下,其它的多是相同
    nieyujiang
        5
    nieyujiang  
       223 天前
    基本上没区别,除了接口要保证兼容性.
    iOCZ
        6
    iOCZ  
       223 天前
    显著的区别是一个是纯粹的 API ,另一个要返回页面。
    eason1874
        7
    eason1874  
       223 天前
    可以没区别,用同一套 JSON API
    wd
        8
    wd  
       223 天前 via iPhone   ❤️ 11
    最大的区别就是手机 app 可能会多版本并存,web 就基本没这个问题
    vcfghtyjc
        9
    vcfghtyjc  
    OP
       223 天前
    @janxin 我理解是可以用同样的后端的,但是没做过相关开发,好奇确认一下。也许会有什么特别的设计?
    zliea
        10
    zliea  
       223 天前
    你凭啥让我写两份。
    April5
        11
    April5  
       223 天前
    这不就是 BFF 的作用吗?
    shawnsh
        12
    shawnsh  
       223 天前 via Android
    手机应用用浏览器不就行了🐶
    chenjiangui998
        13
    chenjiangui998  
       223 天前
    最大的区别是如果有手机端的, 后台需要做好版本兼容,移动端各种奇怪的版本同时访问
    KingOfUSA
        14
    KingOfUSA  
       223 天前
    有一个设计的不同:PC 的列表翻页,上一页和下一页可能重复,一般都觉得正常,而手机的的翻页属于下滑翻页,如果有重复了就很别扭。
    moshiyeap100
        15
    moshiyeap100  
       223 天前
    @iOCZ 现在需要返回页面的后端也少了。。。基本都是接口数据了。
    Dotennin
        16
    Dotennin  
       223 天前
    手机端和 web 端共用同一个代码是趋势, 现在越来越少安卓苹果 web 三端写三份代码了吧. 吃力不讨好.
    AyaseEri
        17
    AyaseEri  
       223 天前
    没区别 都是网页
    Elissa
        18
    Elissa  
       223 天前
    @iOCZ 前后端分离也是 json 数据了,不需要页面
    vvhhaaattt
        19
    vvhhaaattt  
       223 天前 via Android
    前端 js 跟客户端对 json 处理偏好有点小差别。
    客户端同学处理思维更接后端。
    hand515
        20
    hand515  
       223 天前 via Android
    鉴权方式可能会不同,但也可以相同
    lower
        21
    lower  
       223 天前
    app 强制更新,众生平等,一劳永逸……
    niubee1
        22
    niubee1  
       223 天前
    服务端开发上没啥区别,但是服务器的参数调优上还是有不少区别的。
    geekaven
        23
    geekaven  
       223 天前
    比较大的区别就是手机版的 api 不好大改吧。毕竟有老版本这种毒瘤在。
    815979670
        24
    815979670  
       223 天前
    后端开发工作基本上都差不多,都是同一套接口。至于身份认证的话,目前我们开发项目不管是网页还是 app 统一走 jwt ,登录逻辑都不用单独开发。
    TypeError
        25
    TypeError  
       223 天前 via Android
    尽量不做两套,一套接口,接口细节不同的话,可以网关层、bfe 层处理?
    xuanbg
        26
    xuanbg  
       222 天前
    都用一个,谈何异同?
    murmur
        27
    murmur  
       222 天前
    本质上没区别,应用也可以用 http 接口,鉴权安全灰产防护一个不能少,协议只是表面,不同的协议也就是编码不同,但是从问题上没少
    zjsxwc
        28
    zjsxwc  
       222 天前
    同一套接口的
    wingoo
        29
    wingoo  
       222 天前
    最大的不同是 app 会多版本共存, 你的代码需要兼容处理好不同版本的逻辑
    网页则没有
    p1gd0g
        30
    p1gd0g  
       222 天前
    手游后台,多版本确实是个很恶心的问题。
    chengyiqun
        31
    chengyiqun  
       222 天前
    @wingoo 这也是为什么很多 app 喜欢用混合 h5 的原因吧? 因为更新方便
    zxCoder
        32
    zxCoder  
       222 天前
    @wd 请教一下这是什么意思,没写过 app
    zxCoder
        33
    zxCoder  
       222 天前
    @wd 意思是说市场上会有不同版本的 app 吗? 而 web 只要前端更新就只有一个最新版本?
    Elissa
        34
    Elissa  
       222 天前
    @zxCoder 前端代码需要更新直接把新代码上传服务器就行了,用户不需要手动更新,最多刷新网页; APP 需要到应用市场下载或 APP 自行下载
    unco020511
        35
    unco020511  
       222 天前
    没有任何区别
    Torpedo
        36
    Torpedo  
       222 天前
    客户端不容易更新所有版本,而且发出去的版本基本不更新功能,所以有多版本共存、兼容、灵活控制的逻辑都会放到服务端

    网页就简单,前后端各自一改上线就完事了
    Jooooooooo
        37
    Jooooooooo  
       222 天前
    楼上几个说到点子上了, 如果你是一个稍微大点的 app. 那么接口下发给前端的字段一旦上线, 基本就别想下线了, 会有人一直使用特别旧的版本. 强制更新这种手段除非是恶性 bug 一般不会用的.

    所以接口漏出字段要谨慎, 特别是复杂的逻辑更要想清楚, 因为一旦搞出来, 就得一直维护.
    darknoll
        38
    darknoll  
       222 天前
    @iOCZ 现在不都前后端分离了?
    wingoo
        39
    wingoo  
       222 天前
    @chengyiqun 是的, 混合 h5, 只需要处理好验证就行了, 但还有一个更 x 的 需求叫 ab test, 也就是在最新版本上, 前后端都需要有老的逻辑, 所以目前有人搞 Server-Driven UI, 感兴趣的可以搜一下
    huohei
        40
    huohei  
       222 天前 via iPhone
    浏览器套壳(
    Hug125
        41
    Hug125  
       222 天前
    业务逻辑处理肯定是一套;
    就是有几点需要注意:
    1 、Web/H5 需要注意跨域问题;
    2 、App 存在多版本问题,接口注意兼容;
    3 、鉴权方式可能不同
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1367 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 845ms · UTC 18:14 · PVG 02:14 · LAX 11:14 · JFK 14:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.