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中向服务器端传递对象的一种简单方式的主要内容,如果未能解决你的问题,请参考以下文章
kbmmw 的HTTPSmartService 上传文件到服务器端