使用delphi 开发多层应用(十一)使用kbmMW 开发webserver

用kbmMW 开发webserver也是非常方便的。

还是以前面的简单服务器为基础,我们先要通过kbmMW的service wizard 来建立web 服务。

如图,先选择web server service

点下一步,出现选择文件目录的界面

我们这里用webfiles 相对路径,就是在网页文件放到可执行文件目录下的webfiles 目录。

点下一步,出现输入服务名的界面,注意这里的服务名必须是HTTPSERVICE.

后面的基本上就和其他服务类似了,可以一路点下去了。然后就生成对应的服务器代码。

回到from1上,这里需要对TkbmMWTCPIPIndyServerTransport设置一下,使其满足http 协议的要求。

第一要设置端口号为80,也就是常用的http  协议的端口。

第二是要设置StreamFormat 为AJAX ,注意只能是这个,其他的不可以。

设置完控件,就可以在注册这个web server 服务器。

复制代码
procedure TForm1.FormCreate(Sender: TObject);
var
sd:TkbmMWCustomServiceDefinition;
httpsd:TkbmMWHTTPServiceDefinition;
begin

sd:=kbmMWServer1.RegisterService( Twebsrv,false);
httpsd:=TkbmMWHTTPServiceDefinition(sd);
TkbmMWServiceDefinition(sd).MaxCount:=200;
httpsd.RootPath[mwhfcHTML]:='webfiles';
httpsd.RootPath[mwhfcImage]:='webfiles';
httpsd.RootPath[mwhfcJavascript]:='webfiles';
httpsd.RootPath[mwhfcStyleSheet]:='webfiles';
httpsd.RootPath[mwhfcOther]:='webfiles';

end;
复制代码

服务器端就基本上设置好了

现在编译运行。然后在浏览器里面输入http://127.0.0.1

就可以访问服务器了

一切运行正常。

注意:正如我前面文章说的,由于kbmMW 在处理汉字与英文混合的文件有小bug, 作者要求所有的文件

都以UTF-8 格式保存,如果不是UTF-8 格式就可能出现问题,当然如果实在要用非UTF-8 格式的文件

可以参考我前面介绍的方法对kbmMW 进行修正,就可以处理了。

posted @ 2019-07-01 21:50  业容天  阅读(189)  评论(0编辑  收藏  举报