Skip to main content

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.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 可以用
  • activateddeactivated 在 keep alive 時也會執行。
  • activatedmounted 之後