在使用 MVC 模式的时候, 网络请求放在哪里, 更为合理一些或者有其他更好的解决方案嘛? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
issues
V2EX    问与答

在使用 MVC 模式的时候, 网络请求放在哪里, 更为合理一些或者有其他更好的解决方案嘛?

  •  1
     
  •   issues 2015-07-06 13:11:27 +08:00 4858 次点击
    这是一个创建于 3809 天前的主题,其中的信息可能已经有所发展或是发生改变。
    估计有的放Controller, view, model里的都有,放在view里的我觉的纯粹就是瞎搞,controller还可以忍受, 还有其他的更好的解决方案嘛?
    16 条回复    2015-08-12 14:34:52 +08:00
    Clarencep
        1
    Clarencep  
       2015-07-06 13:37:14 +08:00
    网络请求?调用其他系统的REST之类接口吗?
    issues
        2
    issues  
    OP
       2015-07-06 13:53:16 +08:00
    @Clarencep 调用服务器的api
    nagato
        3
    nagato  
       2015-07-06 13:54:38 +08:00
    Model
    issues
        4
    issues  
    OP
       2015-07-06 13:56:09 +08:00
    @nagato 这个也可以
    hdbean
        5
    hdbean  
       2015-07-06 14:04:15 +08:00
    记得以前在网易面试的时候,也问过我同样的问题,我说放View,面试官不以为然呵呵冷笑了一下.
    Clarencep
        6
    Clarencep  
       2015-07-06 14:47:53 +08:00
    @issues 必须是model层;controller层要精简,这种接口调用还是放model层比较合适。若是想搞得解(fu)耦(za)一点,可以将model再分割为BLL和DAL,接口调用放在DAL里面。
    chaucerling
        7
    chaucerling  
       2015-07-06 14:49:10 +08:00
    封装成lib
    Comdex
        8
    Comdex  
       2015-07-06 17:02:27 +08:00
    @Clarencep BLL和DAL是啥?
    Cynthiasun
        9
    Cynthiasun  
       2015-07-06 17:15:07 +08:00
    model
    belanote
        10
    belanote  
       2015-07-06 17:18:24 +08:00
    必须 model 啊
    jarlyyn
        11
    jarlyyn  
       2015-07-06 17:26:24 +08:00
    我是放model的,

    就若同后台的mvc,数据库操作必然是model里一样。
    mhycy
        12
    mhycy  
       2015-07-06 17:35:10 +08:00
    定义在model
    然后方法以特殊的名称定义,例如API_xxxxxx()
    然后在一个controller里面统一处理
    chmlai
        13
    chmlai  
       2015-07-06 17:43:25 +08:00
    一般把网络请求先封装成"Service"层, 然后再 model 或者 controller 里面访问都可以接受.
    Clarencep
        14
    Clarencep  
       2015-07-06 20:58:35 +08:00
    @Comdex BLL = Business Logic Layer DAL = Data Access Layer
    myc0210
        15
    myc0210  
       2015-07-07 11:17:31 +08:00
    angularjs 的话就是扔去一个service里= =
    zylll520
        16
    zylll520  
       2015-08-12 14:34:52 +08:00
    从流程上网络请求由 C 发出,经过 M 的转换,传给 C ,然后再传递给 V 显示,V 里面放业务逻辑就可以了,独立出来的话,网络请求包含 M,C 引用网络请求,感觉逻辑上 MVC 中 MV 之间没有连接了,所以我想放在 M 里面可以吗?但模型和网络请求就混合在一起了,不知道后期好不好维护?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     909 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 21:14 PVG 05:14 LAX 13:14 JFK 16:14
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86