本篇部落客要介紹如果在Perfect工程中引入和使用Mustache頁面模闆與日志記錄系統。Mustache頁面模闆類似于PHP中的smarty模闆引擎或者Java中的JSTL标簽。當然Mustache頁面模闆的功能要弱的多。Mustache頁面模闆的主要功能是将html頁面中的标簽變量(比如“{{name}}”)進行替換,要想引入Mustache頁面模闆相關的庫,隻需要在Package.swift檔案中添加相應的庫的連接配接位址然後再編譯連接配接即可。本篇部落格還會介紹如果将日志記錄到相應的日志檔案,在開發中日志是不可或缺的,是以日志系統的引入與配置也是必不可少的。
下方會對Mustache頁面模闆與日志系統的配置進行介紹。
一、Mustache頁面模闆
1.Mustache頁面模闆的引入
Mustache對應的模闆位址包如下:
.Package(
url: "https://github.com/PerfectlySoft/Perfect-Mustache.git",
majorVersion: 2, minor: 0
)
我們需要在Package.swift檔案中進行依賴包的配置,如下所示。引入包後,使用指令行進行編譯:"swift build"即可。如果你的項目是使用Xcode進行編譯的話,還需要重新執行“swift package generate-xcodeproj”指令再次生成xcodeproj檔案即可。

2.Mustache頁面模闆的使用
首先我們在相應的靜态頁面中添加上相應的标簽,我們還是以上篇部落格中使用到的index.html為例,在該html頁面中,添加上相應的标簽,該标簽會被替換成相應的内容。下方的标簽為{{title}}。
處理完靜态頁面,然後我們該處理服務端的代碼了。下方代碼是從Prefect的官方文檔上摘下來的,不過改了一下Value的key。所有處理Mustache頁面模闆的句柄都需要繼承自MustachePageHandler,在extendValuesForResponse()方法中進行模闆變量的處理,如下所示:
下方是對index.html進行重定向,将index.html交給上述的處理句柄進行處理。
上述執行個體的運作結果如下,{{title}}被換成了Swift使用者,如下所示:
二、日志系統的配置與使用
日志系統在服務端開發中是不可或缺的,接下來我們要做的事情是講每次請求或者相應的内容寫入到日志檔案中,當然平時調試列印的一些資訊也可以輸出到日志檔案中。接下來,我們就要來介紹一下Perfect架構中日志系統的引入和使用方式。
1.引入日志相關包
要做到上述的功能,我們需要引入下方的兩個依賴包。引入包後與上述頁面模闆的做法一緻,還是需要重新使用指令行編譯和運作工程的,當然要重新生成xcodeproj檔案。在此就不做過多贅述了。
//Request請求日志過濾器
.Package(url: "https://github.com/dabfleming/Perfect-RequestLogger.git",
majorVersion: 0),
//将日志寫入指定檔案
.Package(url: "https://github.com/PerfectlySoft/Perfect-Logger.git",
majorVersion: 0, minor: 0),
2.将日志寫入檔案
接下來我們就可以調用日志系統将日志寫入指定的檔案了,首先我們需要檢查存儲日志檔案的目錄是否存在,如果不存在就建立。建立完畢後,将該目錄指派給日志系統的檔案目錄即可,如下第一個框中的内容。然後添加請求和相應的日志過濾器。最下方的框是LogFile的幾個方法的使用,這些資訊都會被存儲到相應的檔案。
進行上述配置後,我們還需要将RequestLogger()中的日志輸出形式切換成LogFile的形式,如下所示:
配置完畢後,我們就可以使用日志系統進行日志輸出了,最終結果如下所示:
今天的部落格就先到這而把,下篇部落格會介紹MySql的連接配接與相關操作。
作者:青玉伏案
出處:http://www.cnblogs.com/ludashi/
本文版權歸作者和共部落格園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,否則保留追究法律責任的權利。
如果文中有什麼錯誤,歡迎指出。以免更多的人被誤導。
收履歷:某網際網路公司,招聘iOS/Android靠譜工程師,入職後,可内部聯系樓主,有小禮品贈送,有意者可郵箱投遞履歷:[email protected]