刀不封 2018-07-31 02:24 采纳率: 100%
浏览 3186
已采纳

接口服务与后台管理系统架构设计

公司做小程序,java后台提供接口服务。同时,针对小程序提交的数据需要登录后台管理系统审核。
实现方式很纠结,希望大神解惑:
1.最简单的办法是把管理后台与小程序api接口放到一个web工程。这样的坏处是/admin和/api在一个工程下,无法控制/admin只在内网访问,如果有人抓到api的地址可以访问admin登录页面。后台更新需要整个工程重新发版。
2.分成两个war,登录和前台api分开能保证两边相互独立,但是后台访问的表与前台访问的表有重复,两个应用操作同一个数据库。

大家帮忙找个好的解决方案吧

最终还是使用了1,由于项目比较小,不想折腾了

  • 写回答

5条回答 默认 最新

  • ball球 2018-08-01 02:00
    关注

    其实两种方法都可以。我具体说下吧。
    方法一:放在一个项目里,没问题。用两个域名访问呗,接口用域名A访问,管理系统用域名B访问。
    给A,B两域名配不同的nginx( 或者你用其它web service也一样),完全可以配成让A只能访问api,B只能访问admin**。

    方法二:
    两个项目,不同目录,数据库操作的公共代码用软链连接。比如api的叫frontend, admin的叫backend, 共用数据库代码1,2,3统一放backend里。
    frontend中有三个相应的软链,链到1,2,3。这样,只要一个地方改了,另一个地方也生效了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 求MCSCANX 帮助
  • ¥15 机器学习训练相关模型
  • ¥15 Todesk 远程写代码 anaconda jupyter python3
  • ¥15 我的R语言提示去除连锁不平衡时clump_data报错,图片以下所示,卡了好几天了,苦恼不知道如何解决,有人帮我看看怎么解决吗?
  • ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
  • ¥20 关于URL获取的参数,无法执行二选一查询
  • ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
  • ¥15 marlin编译错误,如何解决?
  • ¥15 VUE项目怎么运行,系统打不开
  • ¥50 pointpillars等目标检测算法怎么融合注意力机制