1-7
AWS ECS & cloudformation
- 更改 EC2 相關設定會直接起新的 EC2 再把舊的關掉
- 給 ECS 用的 EC2 AMI 要是 ECS-optimized AMI 的
- 更改 Parameters 的 default 值不會觸發更新 cloudformation
AWS loadbalance
- NLB 因為沒有 SG 所以其導流的目標群組必須允許來自 NLB 所在網段的流量,以通過健康檢查
- 若 target group 協議是 UDP,則 target type 必須為 instance
- 目標為 lambda 預設健康檢查為禁用,可以啟用,但 instance、ip 預設啟用不能禁用
- aws ecs console 頁面只能設定一組,但用 cli 或 cloudformation 等方式可以在 service 最多設定五組
AWS VPC
- subnet 只能設定切/24 ~ /28
Netcat
- 簡易的傳送與接受資料指令
- AWS linux2 需要自己安裝
yum install -y nc
,其中 -y 為參數,(安裝過程中會需要輸入 yes no 之類的參數,這樣可以直接帶) while true; do printf 'HTTP/1.1 200 OK\r\n\r\ncool, thanks' | nc -l 8888 ; done
- 因 nc 連接一次就會結束跳出了,故用
while
迴圈讓它一直起來跑 - 用
do prinf
回應一些資訊,上述為回應 http 的範例,可用瀏覽器發出請求,(若沒 http 標頭,瀏覽器無法接受回應) -l
為 listen 的 port
Amplify
用這框架做 S3 上傳檔案操作只能限定上傳在特定資料夾內- 可設三種安全層級的資料夾路徑,之後該資料夾內部可自由設路徑
RWD
- 設計稿尺寸設定要兼容以上,例如 1280x720 設計稿切出來要能在 1280 以上的裝置上完美顯示
Cognito & Amplify
- Amplify 摳 Auth API 給 Cognito 回傳的錯誤訊息總覽
- 若沒開啟驗證選項,則使用者不會收到任何驗證訊息
- Cognito 一開始建 userpool 時設定的必填欄位之後無法更改,其餘沒設必填欄位的屬性會保留且自由選填
- 可自定義新增屬性,但新增後一樣無法修改,自定義屬性皆為選填,前綴為 custom:,自定義屬性不能為必填
Cognito & Amplify
- 發送重設密碼驗證信後(還沒重設),若輸入未更改的密碼還是能正常登入
- 登入後會將相關 token 存放在 local storage 中,若沒登出又用另組帳密登入的話會再加一組相關 token,這時進行登出的話只會登出最後登入的帳號(僅刪掉 local storage 中 最後那組 token),之後不無論再按幾次登出都不會刪掉第一組 token 了
Node JS
- 當前用的 node 版本會影響 node_modules 的版本環境,例:在 v13.6.0 環境下
npm i
後,如切換到 v12.18.2 再跑程式起來會有套件版本相依 node 版本的問題而噴錯
Vue Router
- 若需要以編程方式跳轉非 router 路徑的頁面,則需要在 Navigation Guards 方法中使用原生的 location 方法
- location 相關:https://www.fooish.com/javascript/location.html
window.location.origin
router.beforeEach((to, from, next) => {
// to 是物件含有將要去的路徑相關資料
// from 與上例類似
next() //注意無論在哪個結果中都必須調用 next() 函數才能繼續進行 vue router
})
- 還有其他路由跳轉時的 hook 函數可用,
beforeRouteLeave、beforeRouteUpdate、beforeResolve...等等
- 針對單一路徑是用
beforeEnter
Moment-Timezone JS
- 用 cdn 載入 moment-timezone.js 時也需要載入 moment.js,不然會報錯
- 瀏覽器環境建議用範圍10年data版本,後端環境直接用 min.js
- https://momentjs.com/timezone/docs/
Vue 生命週期 & keep alive
- 使用
<keep-alive>
時,其內包的組件生命週期只會跑一次,若需要在切換回來後能更新最新資料,有另外兩個生命週期 hook 可以用 activated
和deactivated
在 keep alive 時也會執行。activated
在mounted
之後