2023-12-09 07:38 AM 2 2,734
前陣子專頁有篇貼文談到 WebAPI 出錯時,是否必須必須透過 HTTP Status 反映執行結果,例如:找不到時吐 404、系統出錯時回應 500?,得到不少回響,我也獲了新體悟。 我一直認為 WebAPI 是種 Contract,服務端與客戶端約定好,雙方都覺得 OK 就好。即便執行結果出錯,...
2023-12-04 08:57 PM 0 1,060
近年來,我日常寫 ASP.NET Core 網站的起手式都是先開 Minimal API 專案,功能不太複雜的話,單一 Program.cs 不到 200 行程式把功能寫完,用最少資源搞定,不含半點贅肉,符合我追求的極簡精神。 不過,當程式愈寫愈複雜,就得朝向前後端分離,建個 wwwroot 資料夾...
2023-11-20 10:37 PM 8 2,539
.js/.css 換版後,想防止網頁讀取 Cache 強迫改用新版,最無敵的做法是在網址加個 ?v=XXX 參數,每次換版一併更新,URL 參數不同讓原 Cache 失效,即可確保萬無一失。 但手工維護 ?v=... 參數意味著每次換版必須叫出所有引用該 .js/.css 的網頁,一一修改 URL ...
2023-11-09 11:59 PM 0 506
接獲報案,ASP.NET WebForm 站台更新 DLL 元件後出現安全錯誤,訊息如下: Security Exception Description: The application attempted to perform an operation not allowed by the se...
2023-09-12 10:55 PM 5 5,067
同事分享資安知識一則:在網頁引用 Host Header 可能形成資安弱點,給予攻擊者操作重新導向或引用惡意程式的機會。特筆記備忘。 使用 IIS + ASP.NET 示範如下: <%@Page Language="C#"%> <html> <...
2023-09-09 09:21 PM 0 1,124
雲端是當今顯學,基於保密及資安考量,許多企業還是會選擇在地端甚至網路隔離環境作業。微軟的版控解決方案 - TFS Server 的繼任者是 Azure DevOps Server,雖有 Azure 之名,但可在安裝在企業內部隔離網路環境,稱職扮演地端版控伺服器角色。 最近嘗試在 Azure DevO...
2023-09-08 10:57 PM 0 1,513
裝了最新版 VS2022,想建個 ASP.NET MVC (.NET Framework 4.X) 專案不得其門而入,輸入 ASP.NET 關鍵字,只見 ASP.NET Core 專案範本,沒看到 .NET Framework 版本:(VS2022 表示:那是啥?) 2023 年還在維護開發 .N...
2023-08-31 09:59 PM 0 366
近年來設定 IIS 站台我都改用 PowerShell 指令操作(參考:再談 IIS 與 ASP.NET 網站自動安裝設定 - 使用 PowerShell),用指令檔取代 GUI 操作,能減少人為操作失誤風險,並邁向自動化部署的理想。 最近使用 Set-WebConfigurationPropert...
2023-08-27 10:53 PM 0 1,387
上篇文章 辛苦安裝完 AD FS,接下來試試 AD FS 跨界整合的威力。 AD FS 支援多種登入協定,包含 WS-FED、SAML-P、OAuth 等,但 OAtuh 已成當今業界標準,聚焦 OAuth 就好。AD FS 認證身分取得授權的 OAuth 流程有以下幾種: Implicit Gr...
2023-08-23 10:52 PM 0 2,216
工作上有個小需求,想找到簡便方法顯示網頁回應速度,方便快速擷圖對照改善前後的時間差異。 相關軟體很多,但我不想為此安裝程式,以既有工具優先;Chrome/Edge F12 開發者工具的網路功能也有每個 HTTP Request 的時間報表,是個不錯的選項: 不過,我想找到更簡單的 CLI 做法,貼...
2023-08-21 09:49 PM 3 3,467
週末啃完 David 老師「LINE BOT 與人工智慧辨別開發實戰」一書(再一次慢半拍,哈),依慣例筆記備忘。 先前寫過 LINE 機器人,平日也依賴 LINE Notify 發系統通報,嚴格來說我不算 LINE 程式開發生手。但相較於程式用到什麼查什麼學什麼的遊擊式學習,書籍課程提供較完整的知識...
2023-08-03 08:55 PM 2 1,348
昨天提到基於效能與資安,ASP.NET 上線時應關閉偵錯模式,有讀者問到: 若選擇 Release 編譯並停用偵錯模式(web.config <compilation debug="false" />),還能 Log 到錯誤程式所在行數? 首先補充一個基本觀念:要在出...
2023-08-02 10:53 PM 0 1,695
ASP.NET 老人們應該知道 web.config 有個 <compilation debug="true/false" /> 設定,啟用後網站會跑得比較慢,但能提供較多偵錯資訊,有利於開發測試。 ASP.NET 啟用偵錯模式(Debug Mode)後會出現以下行為...
2023-07-05 10:27 PM 9 2,402
ASP.NET Core Minimal API 在我的日常應用愈來愈廣泛,最近有個構想是前端寫成純 HTML (類 SPA 概念,但拆分多個 HTML 以簡化複雜度) 呼叫 Minimal API 完成作業,因為是內部系統,身分證驗部分就走 Windows 驗證用 AD 帳號登入。另外,雖然被攻擊...
2023-06-29 09:41 PM 0 1,105
Visual Studio 從 2022 起轉為 64 位元,4GB 封印解除,自此編輯測試時可以充分利用開發機記憶體,面對複雜專案也不用怕。 不過,從 32 位元改為 64 位元有帶來一些後遺症,過去已經歷過: 【笨問題】Visual Studio IIS Express 32/64 位元模式設...
2023-06-12 09:20 PM 8 3,184
這篇談談 ASP.NET MVC + AJAX POST 程式如何防止 CSRF 攻擊。延伸閱讀:讓我們來談談 CSRF by huli 我寫了一個簡單的活動報名模擬頁面,Index.cshtml 如下: @{ Layout = null; } <!DOCTYPE html> ...