星空三端免密登录原创
金蝶云社区-CM9527
CM9527
3人赞赏了该文章 819次浏览 未经作者许可,禁止转载编辑于2021年12月16日 16:37:05

    我们有的特性是用H5实现了,在Silverlight和GUI端不能使用,但是对于习惯使用SilverLight的客户,又不想用H5端,可以做一个免密登录,在SilverLight端或者GUI端,无缝跳到H5,方便用户使用新的特性。

image.png

  1. 首先确认配置文件开启了免密登录的设置:

<!--启动服务插件(默认登录插件,支持云之家登录,V2 参数协议为JSON格式)-->
    <add key ="StartAppPlugin" value="Default" />
    <add key ="StartAppPluginUDConfig" value="{encoding:'utf-8'}" />

这两个配置是默认的配置,确认没有被注释

    2. 跳转代码:

//表单打开之前的事件
public override void PreOpenForm(PreOpenFormEventArgs e)
        {
            base.PreOpenForm(e);
            //判断非H5端跳转
            if (e.Context.ClientType != ClientType.Html)
            {
                string strURL = ViewUtils.GetByUserTokenUDUrl(e.ParentView, false, "html5", FormConst.EntryRole_InnerWEBBrowser,
                                                        new Func<Kingdee.BOS.Authentication.StartAppParameterProtocolV2, Kingdee.BOS.Authentication.StartAppParameterProtocolV2>((arg) =>
                                                        {
                                                            arg.formid = "XXX";  //要跳到的表单FORMID
                                                            arg.formtype = "dynamicform";   
                                                              //打开的形式
                                                              //formtype = 单据:bill或空, 列表:list, 万能报表:wnreport, 
                                                              //直接sql报表:sqlreport, 系统报表:sysreport, 
                                                              //树形报表:treereport, 移动报表:movereport, 
                                                              //动态表单:dynamicform。
                                                            arg.pageid = Guid.NewGuid().ToString();
                                                            arg.pkid = "";
                                                            return arg;
                                                        }));
                strURL = string.Format("{0}&entryrole={1}", strURL, FormConst.EntryRole_InnerWEBBrowser);
                ViewCommonAction.ShowWebURL(e.ParentView, strURL);
                e.Cancel = true;
                return;
            }
        }

这样就可以实现免密登录了。


图标赞 3
3人点赞
还没有人点赞,快来当第一个点赞的人吧!
图标打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!