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

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

就若同后台的mvc,数据库操作必然是model里一样。
mhycy
2015-07-06 17:35:10 +08:00
定义在model
然后方法以特殊的名称定义,例如API_xxxxxx()
然后在一个controller里面统一处理
chmlai
2015-07-06 17:43:25 +08:00
一般把网络请求先封装成"Service"层, 然后再 model 或者 controller 里面访问都可以接受.
Clarencep
2015-07-06 20:58:35 +08:00
@Comdex BLL = Business Logic Layer DAL = Data Access Layer
myc0210
2015-07-07 11:17:31 +08:00
angularjs 的话就是扔去一个service里= =
zylll520
2015-08-12 14:34:52 +08:00
从流程上网络请求由 C 发出,经过 M 的转换,传给 C ,然后再传递给 V 显示,V 里面放业务逻辑就可以了,独立出来的话,网络请求包含 M,C 引用网络请求,感觉逻辑上 MVC 中 MV 之间没有连接了,所以我想放在 M 里面可以吗?但模型和网络请求就混合在一起了,不知道后期好不好维护?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/203643

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX