实现目的:配置website端与服务端对接
1:配置好各项配置文件
2:server端编写接口客户端调用
1.1首先配置文件有log4的配置文件,有config的配置文件,还有服务列表的配置文件
首先在项目下建立Configs文件夹,里面包含log4和系统配置文件,名字可以随便取只要路径在程序中配置对就行
log4的配置方式大家可以网上百度一篇,博客园应该会有相关的文章,这里讲一下SystemConfig配置文件的配置方法
这里配置了日志和数据库的设置都是1
各项目的Webconfig文件配好配置文件的路径
,在Framework里面对应好就是
其实这里还可以拓展,只不过拓展之后使用的话要做一个类似日志和数据库的封装过程。
1.2:在站点端配置服务文件,如图 ,
详细内容包含
ServerList.config文件是服务列表文件可以配置不同的服务对应不同的Url,serviceList.config里面包含一批Services节点,Server属性就对应不同的服务名称,Name是在本程序中使用的名字,Url是对应接口的路径,Method时表示的用Post或者Get方式请求的,Isrelative表示是 否是激活的。
2.1 接下来我们在Server端写一组接口供website端调用
新建一个Test控制器,继承APi控制器,,
编写两个接口WebHttp,WebHttp2,分别返回对象和对象集合。注意方法名要用Post或者Get属性标注,
website 写两个方法调用
运行 使用python写个调用测试下接口.
断点调试结果website端
server端调用过程
python调试接口
同样把接口换成WebRequestTest2 返回的就是一个list数组
这里我向接口传的参数都是null,如果有需要参数的只要在对应接口上加上形参,在调用上加上实参,参数对象是一样的就行了会自动依赖注入到接口的对象上直接可以使用
注意 本篇讲的是演示了站点端调用服务端,真正前后端分离的话直接使用Server端使用webapi对外开放接口就行了,前端纯Html+css+脚本,asp.net WebApi有一个Help页面只要写好注释就会自动生成接口说明列表
服务端可以使单独抽出来的核心业务模块,这样接近与服务化。
其实接口测试有许多很好的工具,比如火狐的httprequest和Chroom的Postman这两个插件都很好用,只不过赶上火狐最近更新一批插件到时我以前装的不兼容了,重装了好几次火狐一更新就不能用,postman由于要翻墙安装所以也懒得搞了,
直接python三行代码写一个方便多了,python简单强大,建议大家多用用。
还有调试的时候,本例,讲的是直接运行本地进行接口调用,如果真是项目组协同开发的话,建议还是将代码发布到iis上面去然后使用附加到进程的方式调用,这样与真实的服务器环境差距不大,而且方便其他人调用,,
值得注意的是使用附加到进程的方式调试,iis和visual studio 都需要使用管理员的身份打开,如果不清楚也可以百度一下。
还有一点 关于上面的LogFilter是使用Filter拦截器来记录程序的运行情况的
在项目根目录下建立Log文件夹就会自动记录日志 例如早上请求的两次接口 就有记录
就到这里吧,博主讲的不是很详细,有些东西应为我发现博客园上已经有很多大佬写的很详细了所以查找一下也能查到,所以博主没有写的很详细.更多的是想把思路分享出来。
最后附上完整Demo地址,希望大家学习愉快,也欢迎大家提出更好的意见,后续会更新一些后端第三方技术,比如Orm框架EF,Dapper依赖注入框架Autofac,对象转换工具类AutoMapper等,博主也在学习中希望共同进步。