Я пытаюсь создать аутентификацию на основе адаптера в Worklight. Я добавил свой Realm, тест безопасности и модуль входа в файл authenticationConfig. Я попытался следовать вместе с модулями, предоставленными IBM. Я скопировал точный синтаксис и даже жестко закодированные значения для метода WL.Server.setActiveUser. Но я по-прежнему получаю сообщение об ошибке. Есть ли определенный объем, в который я могу использовать этот метод? Кто-нибудь видит или знает, где моя ошибка?Есть ли конкретная область действия, которую я могу использовать WL.Server.SetActiveUser?
Я по-прежнему получаю сообщение об ошибке последующей:
LOG: Request [login]
LOG: Request [/apps/services/api/GPC2/android/query]
LOG: response [/apps/services/api/GPC2/android/query] success: /*-secure-
{"responseID":"1","isSuccessful":true,"resultSet REMOVED LINE THAT CONTAINED DB RESULTS FOR SECURITY
[/apps/services/api/GPC2/android/query] exception.
SCRIPT5007: Unable to get value of the property 'setActiveUser': object is null or undefined
var lname= responseData.invocationResult.resultSet[0].somelastname;
var gpcid = responseData.invocationResult.resultSet[0].someid;
var fname = responseData.invocationResult.resultSet[0].somefname;
WL.Logger.debug("Login :: SUCCESS" + lname + " " + gpcid + " " + fname); //this line does write the values to the log
//WL.Client.login("NotificationsRealm");
WL.Server.setActiveUser ("NotificationsRealm", {
userId: gpcid,
displayName: fname,
attributes: {
firstName: fname,
lastName : lname,
isUserAuthenticated: 1,
}
});
Я пробовал его с жестко закодированной строкой, и он тоже не работает. Среды заменяются переменными javascript, так что имя может быть динамически заполнено из адаптера SQL. –
Я имею в виду firstName, lastName и lastLogin; вы попробовали это, как в примере? –
Идан, спасибо за ответ. Да, я попробовал это. Я считаю, что нашел свою проблему. В коде, который вызывал проблему, произошла ошибка синтаксиса. –