[創意料理] 單純對資料表簡單的 CRUD 讓 Chef.DbAccess.SqlServer 來協助我們

Chef.DbAccess.SqlServer 這個套件是小弟本人開發的,在 ORM 工具盛行的現在,後端工程師能有一套像是 Entity Framework 的資料庫存取框架來協助開發工作,是件很幸福的事情,但是無奈因為環境的關係、政策的關係、仇恨的關係、...blah blah 的,無法盡如人意,在這種情況之下只好自立自強,於是這個套件就誕生了。

...繼續閱讀 »

[創意料理] 介紹一個不要臉的 jQuery 擴充函式 - jquery-model

這個不要臉的 jQuery 擴充函式 - jquery-model 是在下的拙作,原本是我個人用 jQuery 在開發前端程式時所使用的,同事也拿去用了之後受到好評,應該也可以推薦給大家,它不是一個什麼高大上的東西,只是讓我在將 UI 上的內容兜成 JSON 物件時可以少寫一些程式碼。

...繼續閱讀 »

[廚餘回收] Cloudflare 不時吐 502(Bad Gateway),追查發現是 Nginx 發生了「99: Cannot assign requested address」的錯誤。

前幾天,公司的網站在尖鋒時刻,不時會從 Cloudflare 吐出 502(Bad Gateway),查看 Web 伺服器、DB 伺服器的 CPU、記憶體全都沒有過載的情況,把調查對象轉往 Nginx,從錯誤日誌當中看到了下面這個錯誤訊息:

99: Cannot assign requested address

...繼續閱讀 »

[料理佳餚] 在 ASP.NET Core MVC 自訂 HTTP 狀態碼頁面

商業網站通常都會自訂自己的 HTTP 狀態碼頁面,先前有寫兩篇文章介紹在 ASP.NET MVC 如何來做這件事?

現在環境換到了 ASP.NET Core,我們來看一下怎麼處理自訂 HTTP 狀態碼頁面?

...繼續閱讀 »

[廚餘回收] 只是要裝個 Cloud Monitoring agent 到 CentOS 7 上也會踩到雷

GCP(Google Cloud Platform)預設是不會幫我們監控 VM 的記憶體使用率磁碟空間使用率,需要在 VM 裡面多安裝 Cloud Monitoring agent 才看得到,我的 VM 作業系統是 CentOS 7.9,照著官方文件一步一步弄,最終我得到了一個錯誤訊息:

https://packages.cloud.google.com/yum/repos/google-cloud-monitoring-el7-x86_64/repodata/repomd.xml: [Errno -1] repomd.xml signature could not be verified for google-cloud-monitoring'.

...繼續閱讀 »

[廚餘回收] iOS 與 Android 對於已快取的 Request 處理方式不一樣

以前聽過有個笑話是這樣說的:

某A:聽說 iOS 在瀏覽網頁的時候很省電
某B:對,因為它什麼事都沒做。

原來這件事是真的,根據 RFC 7234 5.2.1.4 的定義,如果我們在發送 Request 的時候,加上 cache-control: no-cache,在沒有從伺服器成功取得內容之前,不得使用已儲存的快取來滿足目前的 Request,但是 iOS 它連 Request 都沒送,自然就不需要理會這個定義。

...繼續閱讀 »

[食譜好菜] C# 複製 HTML 格式的文字到剪貼薄中

部落格的文章我一直是用 Markdown Monster 寫完後,直接 Ctrl + Shift + C,Markdown Monster 會直接幫我將文章轉成 HTML 內容寫入到剪貼薄中,接著在點部落的編輯器上切換原始碼,再把 HTML 內容貼上去,但是最近點部落的編輯器改版了,沒辦法直接貼上 HTML 原始碼,可是 Markdown Monster 複製的 HTML 內容居然貼得上去,這其中必有緣故。

...繼續閱讀 »

[小菜一碟] 如何依據網頁內容變換網址但不必重新整理網頁

自從 AJAX 問世之後,由於節省頻寬、提升網頁回應速度的效果顯著,被大量採用,甚至發展出了 SPA,但是這樣反而出現了一個副作用,就是我們無法將網頁最終呈現的結果透過 URL 分享出去,不利於 SEO,我們就來看一下,怎麼在都是用非同步請求取得網頁內容的情況下,變換網址。

...繼續閱讀 »

[小菜一碟] 在 TortoiseGit 用 merge --squash 做部分合併(Partial Merge)

在使用 Git 做版本控制的過程當中,無論是個人開發,還是團隊開發,偶爾會面臨到我們另外開分支所開發的實驗性功能或除錯結果,需要合併回主線的時候,有很大的可能我們只會需要合併其中幾個檔案而已,git merge --squash xxx 可以協助我們完成這件事,不過我一直都是使用 TortoiseGit,我們就來看看 TortoiseGit 怎麼做 Squash Merge?

...繼續閱讀 »