kbmmw中向服务器端传递对象的一种简单方式

Posted Delphi 窑洞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kbmmw中向服务器端传递对象的一种简单方式相关的知识,希望对你有一定的参考价值。

运行环境:delphi 10.2+kbmmw 5.6.20

 

在kbmmw 的老版本中,要向服务器传送一个本地的对象,一般都需要进行一些转换,例如通过序列化的方式。

在新版的kbmmw中这一切都变的很简单,使用use... 方法就可以了,非常的方便,下面就简单的说一下。

首先不管是在客户端和服务端都要引用kbmMWSmartUtils 这个单元。

首先我们做服务器端。

在服务器端做一个处理过程

function Txalionsrv.Performgetobject(ClientIdent: TkbmMWClientIdentity;
  const Args: array of Variant): Variant;
 var
   sl:Tstringlist;

begin
     sl:= use.AsObject<Tstringlist>(args[0]);

     result:=sl.text;


end;

 

这个意思就是把客户端传上来的对象当作Tstringlist 处理。然后返回其内容。

就这么简单。运行即可。

现在再在客户端写对应的请求过程。

代码一样的简单。

procedure TForm2.Button8Click(Sender: TObject);
var
  args:array[0..1] of Variant;
  v:Variant;
  teststringlist:Tstringlist;
begin
   teststringlist:=Tstringlist.Create;

   teststringlist.Add(\'xalion\');
   teststringlist.Add(\'红鱼儿\');
   teststringlist.Add(\'努力的干\');
   teststringlist.Add(\'烦人的土豪小凡\');

   args[0]:=use.AsVariant(teststringlist,False)  ;

   v:=  kbmMWSimpleClient1.Request(\'xalion_srv\',\'\',\'getobj\',args);

   memo1.Lines.Add(v);

   teststringlist.Free;
end;

ok, 搞定了,运行客户端。

无图无真相

可以看到,服务上正确的处理了请求并返回信息。

就是这么简单。

 

以上是关于kbmmw中向服务器端传递对象的一种简单方式的主要内容,如果未能解决你的问题,请参考以下文章

SSM中向后端传递的属性为多个对象的实现方法

kbmmw 的HTTPSmartService 上传文件到服务器端

java安全性的一种简单思路

kbmmw 与extjs 通过JSON Base64 显示图片

一窥kbmmw中的 smart service

kbmmw 中JSON 中使用SQL 查询