最近,管理平台接到新需求,需要向第三方提供可单点的操作页面,嵌入到他们的系统页面。
一脸萌逼,听起来简单的,但实际操作,需要对用户鉴权,需要对嵌入的插件做模版处理等等一系列问题。
首先考虑第一个问题:如何实现单点?
通过查找各方资料,实现很简单,需要第三方在调用插件的时候(也就是我们的入口函数),需要对方提供操作用户及token值或ticket认证凭据,然后此信息通过加密处理,传到我们后台,进行对信息的解析(不解析也可以,反正还要吐到对方的接口验证,具体要看需求了),然后再将信息吐到对方接口进行验证,根据response来做出正确的鉴权行为,通过的话,注意要保存session,避免掉线的尴尬局面。
其次: 如何做到嵌入呢?
搞过web前端的同学都知道,我们要实现某块功能,离开插件,真的不行!细心的同学估计研究过怎么写插件,如果你是这样的话,此段可略过。
嵌入的插件,我选择用webpack打包,原因很简单,我们平台就是用的它。不懂原理的可以先自行补脑。
废话不说了,直接开讲:
插件要考虑到几点问题:
1,样式冲突问题;
2,js插件引用不生效;
3,图片路径问题;
4,入口函数。
第一点,可以考虑用特殊前缀解决,比如:我属于张三麻辣烫有限公司,那么前缀统一一下,都以zs