在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
RTC 作为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 码了。 现在,你可以在客户端任意解释所得到的数据了。 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论