IE 都更筆記 - CORS 與 Windows 驗證不相容問題
雖然 Windows 11 Edge IE 模式無法用 AD 帳號登入網站的疑慮已消除,IE Only 古蹟不致立即崩塌,但現在已是時侯該安排都更計劃,將老舊危樓逐步改建翻新,別拖到重要的事變成重要又緊急,搞出一場盛大「肝臟爆破秀」... Orz 今天遇到的問題與跨網站 AJAX 呼叫有關。我們都知... Read More
View Article冷知識 - IE Temporary Internet Files 目錄
因查案需要研究了 IE 的快取暫存檔資料夾,做個筆記。 我印象中的 IE 快取資料夾名稱還停留在 Temporary Internet Files,但這已是 Windows 7 時代的事,Windows 8/10 起,位置已改到 C:\Users\username\AppData\Local\Mic... Read More
View Article【茶包射手日記】詭異瀏覽器問題 - 無法檢視特定網站
幫忙看了一個蠻奇葩的瀏覽器問題,症狀為 IE 連 A 網站有問題,其他網站則完全正常,改用 Chrome/Edge 看 A 網站也正常。初步檢測蒐集線索如下: IE 連上 A 網站,部分圖檔變叉燒包,網頁卡住。看其他所有網站都正常,改用 Chrome/Edge 連 A 網站也沒任何問題 用 F12... Read More
View Article鋰電池容量測試與過度放電損害觀察
前陣子入手便宜升壓板接 18650 鋰電池轉 USB 插頭供 5V,經驗不足讓鋰電池過度放電,電壓降到 0.5V。 先說一下 18650 鋰電池的放電特性,剛充飽電的電壓為 4.2V,開始放電後電壓緩緩下降到 3.5V 左右,在達到設計容量後快速降到 3.0V 以下,如下面的曲線圖,Y 軸是電壓(V... Read More
View ArticleIIS 支援多 Access-Control-Allow-Origin
上週以為搞定了 CORS 與 Windows 驗證不相容問題,不料還有續集,接到需求 - 呼叫端來源 URL 可能有多筆,寫 IP 也要能通。 CORS 設定時需透過 Access-Control-Allow-Origin Header 指定呼叫端 URL,而 Access-Control-Allo... Read More
View ArticlePowerShell ConvertTo-Json 複雜巢狀結構注意事項
ConvertTo-Json/ConvertFrom-Json 是少數我用不順手的 PowerShell 指令,過去就踩過幾次雷(ConvertFrom-JSON 解析大型 JSON 報錯、ConvertFrom-Json 還原陣列無法 Where-Object 篩選),最近又踩到一枚。 例如以下這... Read More
View Article【茶包射手日記】錯過開始時間導致 Windows 循環排程無法執行
發現 Windows 工作排程器有個出乎我預料的行為。 有個每天 08:00 起每 10 分鐘跑一次到下午 18:00 的 Windows 排程,設定只有在使用者登入時才執行,平日若在 08:00 前登入 Windows 一切正常。今天因故中午 12:23 分左右才登入 Windows,發現排程就不... Read More
View ArticleDapper 無法寫入長字串到 CLOB 欄位
同事分享 Dapper + Oracle 遇到的問題,寫入較長字串到 CLOB 或 NCLOB 欄位時,出現「指定的引數超出有效值的範圍/Specified argument was out of the range of valid values.」錯誤。不意外地,上限落在 VarChar2/NV... Read More
View ArticleC# 小技巧 - 使用匿名型別傳遞多參數
專案有個 HTTP POST 呼叫特定 URL 的共用函式需求,參數採完全彈性,給什麼就組什麼,直接轉成 p1=...&p2=...&p3=... application/x-www-form-urlencode 格式送出。 若用 .NET 寫,最省事的做法是將參數轉成 NameVa... Read More
View Article淺談 ASP.NET WebForm / MVC 內嵌 HTML 時的 XSS 防護
開發公佈欄、商品介紹之類的網站內容管理應用,最常見的設計是提供使用者 HTML 編輯介面(使用 WYSIWYG 編輯器或直接修改 HTML)修改內容存入資料庫,顯示時再將該段 HTML 內嵌成為網頁的一部分 (例如:在 ASP.NET MVC 使用 @Html.Raw(htmlContent)、在 ... Read More
View Article【茶包射手日記】Git 更新版本遇到 SSL 憑證無效問題
Git 工具內建更新功能,執行 git update-git-for-windows 指令即可自動下載更新。(參考:更新本機 Git 到最新版 by Poy) 不過在受管控網路環境,簡單到靠北的下載動作也會因 SSL 憑證問題卡關,我已見怪不怪: VS2017 Git SSL 憑證無效問題 npm... Read More
View Article跑步日記 202111 - 體能復健與三代 Y 拖
終於重回六分速跑完 21K 的水準! 五月中開始的三級警戒攪亂所有人的生活,踏出家門口罩不准離口讓日常慢跑變得困難重重。不過人的適應力蠻強,開始戴口罩跑步,不到五公里就像口鼻被人蓋毛巾澆水刑求,後來學會放緩腳步,居然能七分速龜完 14 公里,自己都嚇到。只是早已習慣 530 到六分速,用七分速跑十... Read More
View ArticleJavaScript 浮點數無誤差四捨五入改良版
上回試著克服 JavaScript 四捨五入浮點誤差,小看了浮點數誤差的千變萬化,只手動測完幾組數字就妄想過關,不意外地,被抓出兩個問題: 原先用整數跟小數總計 16 位判斷出現 999X 或 0000X 近似值誤差,但 JavaScript Number 規格位數上限是 17 位(A Numbe... Read More
View ArticleGit 練習 - 取回某次 Commit 的檔案版本
今天遇到一個問題,想從 Git 版控找出圖檔何時被改壞。圖檔不像程式碼能用 git blame 直接找出哪一行何時被誰修改,但至少可以知道檔案在何時被誰改過,再從 Commit 調閱當時的版本加以比對。這個需求肯定有方便的 GUI 工具可以做到,但我想練習用指令完成。 假設 Git 版控有四次 Co... Read More
View Article.NET 6 亮點快速巡覽
.NET 6 於 2021/11/8 正式發佈了,依照 .NET Roadmap,雙數版號的 .NET 6 為 LTS 版,技術支援週期較符合企業應用需求。 補充:依據.NET 支援週期政策,2020/11/10 發行的.NET 5 支援等級為 Current,支援期間約 18 個月(在下一版本發行... Read More
View Article.NET Framework 技術支援終止期限(EOS)整理
昨天提到 .NET 6 LTS 支援期為三年,預計 2024/11/8 EOS (End of Support),讓我想到「那 .NET Framework 呢?」這篇就來整理一下 .NET Framework 的技術支援終止時間。 本篇主要參考以下官方文件: .NET Framework Sup... Read More
View Article樂譜掃瞄轉電子書之效能優化
手邊有一套 30 年的吉他譜影印本,當年特別挑了些曲子影印黏成捲軸,攤開一次可看四頁,一首歌從頭彈到尾不用翻頁。吉他書早不知流落何方,30 年後只留下這份泛黃影本。 昨天心血來潮,想說我有電子書閱讀器,何不把它數位化永久珍藏?一番摸索後我找到 SOP: 事務機掃全彩 JPG 使用圖片編輯軟體顏色置... Read More
View Article【茶包射手日記】Reporting Service 報表改 RDLC 或升級 .NET 4.0 後嚴重變慢
同事分享的案例,也算是古蹟維護相關問題。 原本於 ASP.NET 2.0 網站運行多年的 RDLC 報表,在專案升級 ASP.NET 4.0 後有水土不服症狀: 較複雜報表顯示時 CPU 飆高,吃掉整顆 CPU (同時預覽兩張報表甚至 CPU 100%) 經交叉比對,記憶體使用量明顯較 ASP.N... Read More
View ArticlePowerShell 快速檢查 TLS 1.x 版本停用狀況
停用 TLS 1.0/1.1 如今已是弱掃軟體的標準檢查項目(相關背景知識可參考舊文),即使 Windows 沒裝網站,一些服務如 SQL Server/RDP 遠端桌面也跟 TLS 協定有關,沒停用 1.0/1.1 會被通報有弱點。 要停用 TLS 1.0/1.1,免費軟體 IISCrypto 提... Read More
View ArticleASP.NET Core 6 練習 - WebSocket 聊天室
ASP.NET Core 從早期的版本就有支援 WebSocket,官方文件說明蠻清楚,還有個簡單的 Echo 範例: 從 Github 下載範例即可編譯執行,很容易讓人產生「我也會寫 WebSocket 呢」的錯覺(笑),但一旦想應用在實際情境,還是有不少地方得自己花時間搞懂。 實務一個常見的 ... Read More
View Article