文章目录
PowerServer简介
PowerServer是一个PowerBuilder语言的HTTP服务端框架。使用PowerServer,可以实现以PowerBuilder语言快速开发HTTP后端服务的目标。PowerServer将HTTP请求映射到PowerBuilder类中的方法,只要实现出方法,即可通过HTTP服务调用。此外,PowerServer还内置了拦截器功能,为PowerBuilder开发者提供了面向切面编程的方式。
PowerServer的设计思想是依赖注入。PowerServer启动时,Session会自动实例化所有的powerserverobject,不需要开发者额外编写create代码。接收到HTTP请求时,PowerServer首先将请求地址映射到powerservercontroller实例的方法,再依据请求的内容类型,按不同策略将请求数据注入方法的入参,方法调用完成后将返回对象转化为HTTP响应。
如何使用
配置PowerServerConfig.json
{
"port": "8091",
"targetName": "powerserver_demo",
"pbvm": "PBVM125.DLL",
"authCode": "",
"sessionCount": 2
}
port : 端口号
targetName : PowerBuilder项目名称
pbvm :PBVM.DLL文件路径
sessionCount : PowerBuilder进程数
创建PB12.5项目,引入powerserver.pbl
编译PB12.5项目,拷贝pbd文件
编译出的pbd文件拷贝至PowerServer\PowerLib目录
启动PowerServer.exe
PowerServer.exe启动时,控制台会打印出已加载的控制器、拦截器、定时器、PB进程、当前端口号等信息
快速开始
示例 : Hello World
1.创建PB12.5项目powerserver_demo,引入powerserver.pbl
2.新增类psc_helloworld,继承powerservercontroller
添加方法hello,返回类型string,代码如下:
return 'Hello World from PowerServer'
3.编译项目,拷贝pbd文件至\PowerServer\PowerLib目录
4.配置PowerServerConfig.json
5.启动PowerServer.exe
可以看到,刚才创建的服务 /psc_helloworld/hello 已经成功加载
6.测试服务
示例 : 表单参数注入
1.新增测试类psc_demo01,继承powerservercontroller,添加方法test01
return 'id : ' + id + '~nname : ' + name
2.编译项目,覆盖pbd文件,启动PowerServer.exe
3.测试服务
测试GET方法:
测试POST方法,设置Content-Type为application/x-www-form-urlencoded:
示例 : 文本参数注入
1.测试类psc_demo01新增方法test02
return 'input string parameter : ' + param
2.编译项目,覆盖pbd文件,启动PowerServer.exe
3.测试服务
设置Content-Type为text/plain:
项目与文档下载
PowerServer项目与文档下载 提取码:jb0d
使用过程中出现问题请反馈作者:
QQ:768310524
TEL、WX:18649713925