起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1367|回复: 2

[结贴] 如何在登录事件的后端获取登录账号和密码等信息?

[复制链接]

41

主题

108

帖子

334

积分

中级会员

Rank: 3Rank: 3

积分
334
QQ
发表于 2016-4-27 12:53:28 | 显示全部楼层 |阅读模式
之前发了个帖子想在登录验证时增加第三方的验证码验证,
http://bbs.wex5.com/forum.php?mo ... page=1#pid165241116

我增加的验证事件是进行数字验证码验证,选择放在系统的登录验证action事件后执行。在写的时候发现还是有不知道如何解决的问题。
问题1:在这个after事件后,如何获得前端传过来的账号,数字验证码信息?
问题2:验证不通过时,抛出异常后,是否login的动作没有完成?

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-4-27 16:34:03 | 显示全部楼层
应该在登录的loginAction前处理,不应该放到后处理
登陆后已经把在线用户数记录了,就是抛异常了不管用了,所以要在登录前处理

自己的参数在login.js中可以参考用户名和密码的方式获取到自己输入的信息,然后传参以及接收参数参考下面的
在/UI2/portal/base/login/login.js的
Model.prototype.doLogin = function(params){中加上要传的参数如下红色标准的:
Model.prototype.doLogin = function(params){
                        params['url'] = require.toUrl(loginAction);
                        params["options[aaa]"] = "bbb";
            var result = biz.Request.login(params);
            if(result.status === 0 || result.status === 500){
                    return {flag: false, message: "网络有问题, 请与管理员联系!"};
            }else{
                    return JSON.parse(result.responseText);
            }        
        };               
然后在/BIZ/SA/OPM/system/system.process.m的动作设置中找到loginAction,在执行前事件中通过下面的方式可以获取的loginAcion的Map参数,然后自己从Map中获取,获取Map参数参考如下获取:
public static void systemProcessBeforeLoginAction() {
                System.out.println(ContextHelper.getActionContext().getParameter("options"));
        }
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

41

主题

108

帖子

334

积分

中级会员

Rank: 3Rank: 3

积分
334
QQ
 楼主| 发表于 2016-4-28 13:40:46 | 显示全部楼层
OK,按照此方法已经实现需求。谢谢。请结贴。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-19 13:45 , Processed in 0.062537 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表