Worklight客户端api查询

时间:2013-11-29 12:09:42

标签: ibm-mobilefirst worklight-adapters worklight-security

我使用了基于适配器的身份验证,并设置了userIdentity。现在,我尝试使用Worklight API的loginnameusername来获取WL.Client.getUserName(realm)WL.Client.getLoginName(realm),但两个API调用都返回NULL作为结果。我使用下面的代码在适配器中设置了用户身份。在基于适配器的身份验证上进行身份验证时,我只是不知道如何设置用户的usernameloginname。我可以通过userId检索领域的WL.Client.getUserInfo(realm, "userID")

如何设置usernameloginname

var userIdetity={
          userId : "kawin",
          disaplyName : "Kawinesh",
          attributes : {
          foo : "bar"
          }
  };
     WL.Server.setActiveUser(realmname,userIdentity);

2 个答案:

答案 0 :(得分:2)

您好我找到了答案我只需设置usrIdentity对象以及userName和loginName键值对,如

var userIdentity = {
                userId: username,
                displayName: username, 
                attributes: {
                    foo: "bar"
                },
                loginName : username,
                userName : username
        };

答案 1 :(得分:1)

您可以在创建用户身份时存储自定义属性(作为用户名和登录名),如下所示:

   var userIdetity={
          userId : "kawin",
          displayName : "Kawinesh",
          attributes : {
             username : "your_user",
             loginname : "your_login_name"                 
          }
  };

  WL.Server.setActiveUser("AdapterAuthRealm", userIdentity);

然后,在客户端,您可以检索获取"属性的那些值"对象如下:

var attributes = WL.Client.getUserInfo("AdapterAuthRealm", "attributes");
var username = attributes.username;
var loginname = attributes.loginname;

希望有所帮助。