[小菜一碟] 利用 window.navigator.sendBeacon() 在使用者關閉網頁視窗時發送記錄

我們在追蹤客戶端行為時,多多少少會遇到一個場景,就是要在使用者把網頁視窗關閉時,將記錄送回伺服器端,做法上我們可能會想在網頁視窗觸發 unload 事件的時候,發送 AJAX Request 回伺服器端就好了,但是這個方法在一些瀏覽器上(比如:Firefox)不 Work,取而代之 Web APIs 提供了更好的 API - sendBeacon()

...繼續閱讀 »

[小菜一碟] 使用 Cloudflare 的 Transform Rules 功能協助我們輕鬆判定友好爬蟲(Bot、Crawler)

在跟爬蟲的戰爭之中,很容易打到一些友好的爬蟲,像是 Google、Bing、...等搜尋引擎,還有像是 Ahrefs 這種 SEO 的輔助工具,我們要在自己的應用程式當中去過濾出所有的友好爬蟲,是一件苦差事,不過如果我們有使用 Cloudflare 的話,Cloudflare 有自己維護友好爬蟲的清單,再搭配他們自家的 Transform Rules 服務,我們就可以很輕鬆地過濾出友好的爬蟲。

...繼續閱讀 »

[小菜一碟] Visual Studio 2019 16.11 版本的一個大亮點 - .NET Hot Reload

今年(2021 年)5 月的時候 .NET Blog 發佈了一篇文章 - Introducing the .NET Hot Reload experience for editing code at runtime,在介紹 Visual Studio 2019 16.11 的新功能 - .NET Hot Reload,當時 Visual Studio 2019 16.11 還在 Preview 1,最近終於正式更新了,我立即將 Visual Studio 2019 更新到 16.11 來體驗一下。

...繼續閱讀 »

[廚餘回收] Visual Studio 2017 的目標 Framework 不見 .NET Standard 2.0

.NET Standard 2.0 算是目前在 .NET 生態系裡面,如果要開發類別庫的話,在新穎跟通用之間取得平衡之下,大家折衷過後比較會選擇的版本,這一天我打開 Visual Studio 2017 要維護以前開發的一個 .NET Standard 2.0 專案,突然發現「目標 Framework」不見 .NET Standard 2.0 的蹤影。

...繼續閱讀 »

[料理佳餚] Windows Forms 三種 Binding 的連動方式:TwoWayBinding、OneWayBinding、OneWayToSourceBinding

日常的工作當中,還是難免遇到需要維護 Windows Forms 的程式,基本上 Windows Forms 控制項的互動能夠用 Binding 的方式去處理,我就儘量用 Binding 的方式去處理,讓我自己能夠有更多的精神放在商業邏輯上,這篇文章想跟大家分享 Windows Forms 的三種 Binding 的連動方式。

...繼續閱讀 »

[小菜一碟] 無意中發現 SSMS(SQL Server Management Studio)有一個「檢視相依性」的功能

如果我們接手維護一個資料庫,裡面的 Table、View、Stored Procedure、Function、Trigger 相依鏈錯綜複雜,想要定位發生問題的區塊,搞得像盜墓一樣,這天我無意間發現 SSMS(SQL Server Management Studio)有一個「檢視相依性」的功能,有助我們來釐清資料庫物件的相依鏈。

...繼續閱讀 »

[料理佳餚] Regular Expression(正則表達式)的比對「不包含」

如果說有什麼工具是在 IT 行業內不同領域都需要去學會的,我認為 Regular Expression(正則表達式)會是其中之一,而我們使用 Regular Expression 大都是去比對是否包含某個字或詞?鮮少遇到比對「不包含」的情境,我就我遇過的需求來介紹 Regular Expression 的比對「不包含」。

...繼續閱讀 »