Delphi XE2 DataSnap - Доступ к свойствам соединения REST в модуле методов сервера
Я создаю сервер XE2 DataSnap, который будет обслуживать соединения от клиентов REST. Моё свойство DSServerClass LifeCycle установлено в "Вызов". Свойства соединения REST будут включать имя пользователя и пароль, которые обрабатываются с помощью события DSAuthenticationManager UserAuthenticate(). Что мне нужно знать, это как я могу получить доступ к имени пользователя и паролю в классе методов сервера? Я хочу знать, какое имя пользователя / пароль REST запустили экземпляр объекта моего класса сервера.
1 ответ
Решение
Вы можете использовать DSServerClass.OnPrepare для этого:
procedure TServerContainerTest.DSServerClass1Prepare(
DSPrepareEventObject: TDSPrepareEventObject);
begin
// Add username property to TServerMethodsTest
if DSPrepareEventObject.MethodInstance is TServerMethodsTest then
TServerMethodsTest(DSPrepareEventObject.MethodInstance).Username := DSPrepareEventObject.UserName;
end;
Там нет доступного пароля. Не используйте Server LifeCycle для этого!