
举个栗子:
两个端 比如果登录吧 网页端用的是 session App 端是用的本地储存的用户凭证 他俩登录可以一个接口 但是返回数据有所不同
如果把 api 分开写对应不同的 service 这样重复的东西会不会太多啊
小白不太懂 还请指点
1 b821025551b Jan 4, 2018 方法 1:网页不用 session 机制,和 app 一样存储 token,走一样的接口; 方法 2:后端接口 MVC,controller 层做两种就行了,一种针对网页,一种针对 APP,逻辑都是共用的。 |
2 Fe1Fan OP @b821025551b 如果按照第二种方法来 对于不同端数据的返回不同 是要在 service 层做判断吗? |
3 b821025551b Jan 4, 2018 不知道你所说的,两端数据有差别,是有多大的差别。按照我的理解,既然都是同一个接口,逻辑都是一样的,可能 APP 那边比网页那边多一个字段,如果这种的话没必要在每个 serice 的逻辑里做,封装个函数做格式化,然后在 controller 里调用就行了。 |
4 WuwuGin Jan 4, 2018 via Android 关键词 RESTFUL API |
5 Fe1Fan OP 谢谢各位的回答,我总结一下去试试。 |
6 AlisaDestiny Jan 4, 2018 @b821025551b 可以在 controller 直接判断 request.header 里的 user-agent。或者在接口里显式的加入客户端类型参数: /api/data?client=web | /api/data?client=phone |
7 b821025551b Jan 4, 2018 @AlisaDestiny #6 感觉你说的和 lz 想问的不是一件事。。。 |