zoukankan      html  css  js  c++  java
  • 使用delphi 开发多层应用(十二)使用kbmMW webserver 返回JSON

         由于kbmMW 服务器与客户端交互是使用它的专用数据格式,因此与其它语言及平台相互访问的话就会有兼容问题,

    为了最大化的利用kbmMW 服务器,从kbmMW 4.0 以后,其开始支持JSON 格式传递数据,其实就是可以通过

    Webserver根据客户端的request 来返回对应的JSON串.

        继续利用上次的webserver 的例子,在webservice 里面加一个TkbmMWIBDACQuery和TkbmMWJSONStreamFormat,

    如图:

    同时在代码里面添加以下代码
    function Twebsrv.Performget(ClientIdent:TkbmMWClientIdentity; const Args:array of Variant):Variant;
    var
    mystringstream:Tstringstream;
    MimeType:string;
    Charset:string;


    begin

    // Enter code here to perform function get
    if length(Args)<1 then
    kbmMWRaiseException(KBMMW_ERR_SERVICE_HTTP_URLMISSING,'Missing URL.');

    if args[0]='/getdata' then
    begin
    cx.SQL.Clear;
    cx.SQL.Add('select XH,XM,RQ from rssj');
    cx.Open;
    mystringstream:=TstringStream.Create('',TEncoding.UTF8); //设置为UTF8格式

    try
    cx.SaveToStreamViaFormat(mystringstream,kbmMWJSONStreamFormat1);
    Result:=mystringstream.DataString;
    finally
    mystringstream.Free;
    end;
    Exit;
    end;



    result:=HTTPResponseFromFile(Args[0],MimeType,Charset);

    SetResponseMimeType(MimeType);
    SetResponsecharset(Charset);
    end;
    运行就可以显示以下效果
    剩下的就是客户端自己随便解释了。
  • 相关阅读:
    放弃我最喜爱的网络,全面转入软件开发
    [推荐]制作div+css圆角
    一个页面多个超连接的实现
    C#基类和派生类
    代码不是重点, 领悟OO思想(一)
    C#params 有什么用?
    计算机族必喝的健康饮品
    今天再做上传图片时候遇到了一个JS 图片预览问题
    C#中split的5种方法
    [推荐]制作div+css圆角
  • 原文地址:https://www.cnblogs.com/xalion/p/2420011.html
Copyright © 2011-2022 走看看