實現目的:配置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等,博主也在學習中希望共同進步。