Delphi XE2 DataSnap - 访问服务器方法模块中的REST连接属性

时间:2012-01-13 23:24:28

标签: delphi authentication rest datasnap

我正在构建一个XE2 DataSnap服务器,它将为REST客户端提供连接。我的DSServerClass LifeCycle属性设置为“Invocation”。 REST连接属性将包括用户名和密码,这些用户名和密码通过DSAuthenticationManager UserAuthenticate()事件处理。我需要知道的是如何在服务器方法类中访问用户名和密码?我希望能够知道哪个REST用户名/密码启动了我的服务器类的对象实例。

1 个答案:

答案 0 :(得分: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!