Liveqrcode活码系统设计

Liveqrcode活码系统设计
活码是⼀种⼆维码,可以通过后台配置让⽤户扫码时跳转到不同的⽹址。除了⼆维码⽣成接⼝,本站还实现了多租户的活码配置接⼝,以及活码后台jar包,详见。
⼆维码⽣成使⽤了zxing三⽅包实现,活码配置接⼝使⽤了redis存储多租户信息,代码⽐较简单,这⾥主要介绍两个细节。
1,多租户(多域名、多主机)与接⼝访问权限的处理问题
接⼝访问权限使⽤的是ip⽩名单机制,曾经设计为标记租户的主机ip来为其活码后台jar授权接⼝访问,但⼜考虑到活码后台托管时不⽅便处理(单主机+多托管户),另外接⼝⼜已开放给showapi的⽤户访问,于是想到了接⼝权限与活码租户解耦的办法:ip⽩名单只⽤于授权接⼝访问,活码后台jar提供showapi_userName参数以便区分多租户(托管时根据域名不同提供不同的租户参数)。
实际使⽤场景:
⽤户甲再showapi注册了账户lurenjia,调⽤showapi接⼝访问活码配置接⼝时⾃动提供了⽤户信息lurenjia。
人文主义者
⽤户甲在⾃有的主机ip上部署了定制的活码后台jar包,访问活码配置接⼝时也提供⽤户信息lurenjia,因此可以访问到上⼀步配置的跳转⽹址。哥本哈根协议
2,活码后台jar代码
配置⽤户信息:定制时仅配置某个域名,托管时多个域名都配置受弯
热点趋势liveqrcode.userNames={"domain1":"lurenjia","domain2":"lurenyi"}
sdh传输相关代码:区分域名传递不同的⽤户信息
@Value("#{${liveqrcode.userNames}}") Map<String, String> userNames;
@RequestMapping(value="/{code}", method=RequestMethod.GET)
public String redirect(@RequestHeader ("host") String host, @PathVariable String code)
String userName = (host);
台账还可以考虑在活码后台分析客户端的设备参数,让活码配置的⽹址url可以携带变量,例如domain/{os},可以让不同系统的⼿机跳转到不同⽹址,后续可以考虑⽀持。

本文发布于:2024-09-22 13:40:13,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/596314.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:活码   后台   配置
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议