XSS 處理
前端XSS 問題很難處理,雖然可能有做htmlencode相關處理,但是程式還是會被判有風險。這邊整理一下那些做法。
尋找 spring boot 使用 sftp 方案
當時在找 Spring Boot 接 SFTP 的方案,本來以為直接找一個簡單 client 呼叫就好,結果真的查下去會發現至少有兩條路:一條是直接用底層 SFTP 函式庫,另一條是走 Spring Integration。這篇先把我整理過的思路補完整,之後再回頭看會比較知道當初為什麼選某套方案。
VSCode 設定 Java debug console 與 log4j2 hightlight
最近用接的專案有用 maven,我發現可以在 VSCODE 開發成功,除了採到 Spring Boot MultipartFile.transferTo雷。不過修完後就沒有什麼問題。
Vue-myAnimeList 產生我的動畫清單
完成品:我的新番清單
因為先前用 jQuery 寫出來版本不能跟朋友討論最近新番。連結在這:201507新番表
我想實作可以類似可以討論作品,就做出這個玩意。
小記這版特點
- 使用 Github Action 更新清單
- 右鍵可以做動畫排名(中圖想到功能)
- 這邊看到功能有兩大項,一個是本季月番,另一個是總月番顯示內容
這個是我朋友開的 Issue,因為我朋友說不能跨季排名,這個非常不方便。這邊我原本煩惱要怎麼做比較好,原本想說多那個功能需要花七天時間,後來再想有沒有更好的做法,後來想到可以用模組化,大大減少我程式撰寫,花了三天時間完成(下班時間,一天大概2~3小時)。源碼:vue-myanimelist/MyAnimeList.vue at master · malagege/vue-myanimelist - 可以用網址分享
- 可存檔功能,這也是我朋友開的 issue 。因為他覺得要紀錄網址太麻煩了。我原本也不太能確定有時間時作,因為要用這個特別做這個功能要額外花時間太麻煩了(身為上班族下班時間可是非常寶貴),我在想有沒有更簡單的作法。後來想到共用方法可以寫元件,想說值得嘗試。源碼vue-myanimelist/SettingManager.vue at master · malagege/vue-myanimelist
上面3和5真的讓我寫這個非常有成就,我覺得如何寫出共用元件可以讓下一個專案使用,減少我們後續製作程式的成本這個非常重要。
最後我其實是後端工程師,久久寫 Vue,不知道下次寫我還記得 Vue 有多少…
可改進:
- url 那一段載入很亂,因為有 bug 之下,寫到有點暈,所以就暴力寫出來了
- SettingManager 讀取有 bug ,因為要點兩下
- 當下同網頁貼別人網址無法載入清單
PHP JAVA Session 處理機制
小記
logrotate 使用一般使用者指令執行方法
一般我們開發人員沒有權限,但有一般使用者可以使用 logrotate ,就不用自幹 Shell Script 指令,還能做多樣化設定。
先前文章有研究到logrotate 自動切割 log 小記 | 程式狂想筆記,但都沒實戰。
CSP 網頁安全性設計
CSP 是 Content Security Policy 的縮寫,主要用途是告訴瀏覽器「這個頁面允許載入哪些資源、允許哪些腳本行為」。平常如果只把它當成安全掃描報告裡的一個名詞,很容易低估它對前端行為的實際影響。
ElasticSearch 6.3 升級 6.6.1
ElasticSearch 做版本升級時,最怕的不是指令本身,而是升級後才發現資料、外掛或設定彼此不相容。尤其從 6.3 升到 6.6.1 這種同大版本下的小升級,看起來跨度不大,但實務上還是不能直接當作覆蓋檔案就結束。
itextpdf 使用 PdfReader 遇到檔案 lock 住問題
最近換個環境執行,結果發現檔案刪除會失敗。我還以為是MultipartFile.transferTo 遇到 FileNotFoundException 問題,後來發現不是,檔案被 lock 掉。