博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用delphi 开发多层应用(十七)使用RTC web 服务器返回JSON
阅读量:7255 次
发布时间:2019-06-29

本文共 1292 字,大约阅读时间需要 4 分钟。

     作为delphi 的最专业的web 应用服务器,如果客户端要使用JSON 的话,那么使用RTC 应该也是一种

非常好的选择。下面我们做一个使用RTC web 服务器返回数据库JSON 的例子。

    建立一个新的程序窗体,放置如图的控件:

其中server 的属性为

注意,这一块先不要选多线程,因为在这个简单的例子里面暂时不涉及到数据库池,

后面我会做数据库池的例子。

RtcDataProvider1 的属性

然后设置好unidac 的数据库连接属性,我这里使用Firebird 作为数据库。

并设置事件以下代码:

procedure TForm2.Button1Click(Sender: TObject);begin   server.Listen();   Button1.Caption:='已启动';   Button1.Enabled:=False;end;

 

procedure TForm2.RtcDataProvider1CheckRequest(Sender: TRtcConnection);begin     with TRtcDataServer(Sender) do    if UpperCase(Request.FileName)='/GETDATA' then      Accept;end;
procedure TForm2.RtcDataProvider1DataReceived(Sender: TRtcConnection);var  ds:Trtcdataset;   r:Trtcvalue;  ss:string;  s:TRtcHugeString;begin  with TRtcDataServer(Sender) do    if Request.Complete then     begin      ds:=TRtcDataSet.Create;      r:=Trtcvalue.Create;      s:=TRtcHugeString.Create;    try         cx.SQL.Clear;         cx.sql.Add('select * from bmb');         cx.Open;      DelphiDataSetToRtc(cx,r.NewDataSet);      r.to_JSON(s);      ss:=s.Get;      write(ss);      cx.Close;     finally      ds.Free;      r.Free;      s.Free;     end;     end;end;

 

然后编译运行,注意要手工加入RtcDb 和rtcFastStrings 这两个单元引用。

现在我们在浏览器里面输入http://127.0.0.1/getdata

就会显示数据库输出的JSON 串

呵呵,可以发现rtc 的json 传里面已经把汉字直接转成unicode 码了。

现在,你可以在客户端任意解释所得到的数据了。

 

 

转载地址:http://dnzdm.baihongyu.com/

你可能感兴趣的文章
UITableViewCell的选中时的颜色设置
查看>>
为什么用evernote
查看>>
存储数据类型的转化总结
查看>>
Python基础语法
查看>>
rpm 与压缩解压缩
查看>>
CSS扩展技术-less
查看>>
食堂自助点餐系统需求分析
查看>>
组合数学的卡特兰数 TOJ 3551: Game of Connections
查看>>
vs如何通过Json生成类
查看>>
测试分页查询出数据并分文件导出[java工程]
查看>>
JAVA时间工具类,在维护的项目里的
查看>>
moa 35 批量删除
查看>>
个人知识管理的10个误区
查看>>
【沟通的艺术】你能勾住你的听众么?
查看>>
WYSE率先支持RemoteFX功能
查看>>
易宝典文章——用ISA 2006标准版发布Exchange 2010的OWA系列之外网客户端
查看>>
SCCM 2012系列4 配置SCCM2012 Endpoint Protection上
查看>>
分享做老师的幸福
查看>>
动软发布微信营销服务系统,微信商城系统!
查看>>
艺术是什么?不懂很难泡到妞!
查看>>