如何將Rocket框架用到的Handlebars模板與Rust程式編譯在一起? 2019 年 8 月 31 日 Magic Len Rust Rocket的「rocket_contrib」套件雖然有提供Template結構體,可以套用Handlebars模板來回應HTML資料,但是這些模板檔案必須要和程式執行檔分開來儲存才行,所以如果想要實現單檔執行的Web應用程式,就需要靠其它的方式來使用模板引擎。 繼續閱讀
如何將Rocket框架回應的靜態檔案與Rust程式編譯在一起? 2019 年 8 月 28 日 Magic Len Rust Rocket的「rocket_contrib」套件雖然有提供StaticFiles結構體,可以直接將它的實體註冊給Rocket,使Rocket能夠提供靜態檔案(如JS、CSS、圖片檔案等),但是這些檔案必須要和程式執行檔分開來儲存才行,所以如果想要實現單檔執行的Web應用程式,就需要靠其它的方式來實作程式。 繼續閱讀
如何用Rocket框架回傳JSON格式的資料? 2019 年 8 月 26 日 Magic Len Rust Rocket的「rocket_contrib」套件雖然有提供Json結構體可以作為路由處理程序的函式的回傳值型別,來回傳JSON格式的資料,但實際用起來卻不是很方便。 繼續閱讀
如何用Rocket框架來回應並下載MongoDB的檔案中心裡的檔案? 2019 年 8 月 25 日 Magic Len Rust 在先前的文章中,我們介紹了能讓Rocket框架直接回應MongoDB檔案中心裡的檔案的方法。如果想要讓網頁瀏覽器在收到伺服器傳來的檔案資料時,將其下載成檔案的話,可以參考這篇文章。 繼續閱讀
如何用Rocket框架來回應MongoDB的檔案中心裡的檔案? 2019 年 8 月 22 日 Magic Len Rust 在先前的文章中,有介紹過用Rust程式語言搭配MongoDB來儲存檔案的方式,那麼要如何將其應用到Rocket框架中,使Rocket框架能夠回應檔案中心儲存的資料呢? 繼續閱讀
如何用Webpack來打包JavaScript、SCSS/CSS、HTML網頁和任意檔案? 2019 年 8 月 20 日 Magic Len 研究分享、 JavaScript Webpack是JavaScript的模組建置工具,運行在Node.js上,它可以將零散的JavaScript檔案用各式工具優化並打包起來,加快網頁的載入時間。Webpack也並不限於用在JavaScript上,舉凡網頁有用到的靜態資源(如JS、CSS、圖片檔等),甚至是HTML網頁,Webpack都有辦法打包。 繼續閱讀
如何用Rocket框架回應任意資料並套用HTTP的ETag機制? 2019 年 8 月 18 日 Magic Len Rust 在先前的文章中有提到用Rocket框架回應任意資料的方式,在另一篇文章中也有介紹用Rocket框架來實現HTTP的ETag快取機制,要怎麼樣把這兩個東西結合在一起使用呢? 繼續閱讀
如何用Rocket框架實現HTTP的ETag快取機制? 2019 年 8 月 16 日 Magic Len Rust ETag是HTTP提供的快取機制,可以讓伺服器利用簡單的字串比對,來驗證客戶端先前快取到的HTTP回應是否依然有效。它的流程主要是這樣:伺服器在回應資料的同時,於HTTP回應標頭中夾帶「ETag」欄位,這個欄位的值就相當於這個資料的ID,而客戶端在將HTTP回應快取下來之後,若需重新發送請求時,就會在HTTP請求中夾帶「If-None-Match」欄位,將原先快取到的ETag值再回傳給伺服器,讓伺... 繼續閱讀
如何用Rocket框架回應任意資料? 2019 年 8 月 14 日 Magic Len Rust Rocket框架雖然可以提供靜態檔案,但有時候我們的資料來源並不是檔案,而可能是從資料庫撈出來的資料,或者是由程式動態產生出來的資料。雖然Rocket框架可以直接使用「Vec<u8>」來作為回應的型別,但使用起來並不是很方便,因為在回應二進制資料時,除非是讓特定程式存取的API,不然我們幾乎是一定會需要替回應的資料設定內容類型(Content-Type)的,否則網頁瀏覽器就不會知道伺服器回應的資料... 繼續閱讀
如何讓Rocket框架回應給網頁瀏覽器的資料可以直接被下載成檔案? 2019 年 8 月 12 日 Magic Len Rust 一般網頁瀏覽器在開啟一些常用文件、圖片、影片等格式時,會直接在網頁瀏覽器上進行瀏覽或是播放,但有時候我們會希望使用者可以在點擊網頁連結之後,無論該連結的資源是什麼類型的檔案,使網頁瀏覽器都會跳出下載的視窗。 繼續閱讀