【 Node.js 】透過 express 設定與取得 Heroku Redis 數據
內容
- 學習目標
- 前置準備作業
- 程式與軟體
- 在
Heroku部署Redis - 透過
Node.js的Express來設定與取得Redis數據 - Push 程式到
GitHub - 透過
GitHub部署程式到Heroku - 透過
Postman測試
學習目標
- 在
Heroku部署Redis - 透過
Node.js的Express來設定與取得Redis數據
前置準備作業
- 註冊 Heroku 帳號並綁定信用卡
程式與軟體
- Node.js
- npm( Node Package Manager )
- Visual Studio Code
- Git
在 Heroku 部署 Redis
Step 1. 登入到 Heroku
Step 2. 建立 App
- 點選右上角的
New➙Create new app
App name欄位- 請輸入唯一識別的名稱,本範例取名為
demo-redis-express
- 請輸入唯一識別的名稱,本範例取名為
- 點選
Create app
- 建立完成畫面
Step 3. 安裝 Redis
- 點選
Resources頁籤
Add-ons輸入redis
- 選擇
Heroku Redis
- 點選
Provision
- 安裝完成畫面
透過 Node.js 的 Express 來設定與取得 Redis 數據
Step 1. 初始化專案
- 開啟 Visual Studio Code
- 點選
Add workspace folder...
- 點選
新增資料夾
- 為專案取一個獨一無二的名稱並選擇放置路徑
- 本專案設定放於桌面的
project資料夾,並將專案命名為demo-redis
- 本專案設定放於桌面的
- 點選右下角的
Add
- 建立完成畫面
-
開啟
Visual Studio Code中的終端機-
點選
Terminal➙New Terminal -
開啟
Terminal後的畫面 ( Terminal 位於下方紅色區域 )
-
-
Node.js 環境初始化
-
在
Terminal輸入下方指令npm init -y -
執行完成畫面
-
-
安裝所需套件
-
在
Terminal輸入下方指令npm i dotenv express redis -
執行完成畫面
-
package.json也能看到相關資訊
-
Step 2. 建立 Redis 相關程式
-
app.js-
建立檔案或目錄
- 在專案根目錄建立
app.js檔案
- 在專案根目錄建立
-
程式如下
-
-
index.js-
建立檔案或目錄
- 在專案根目錄建立
routes資料夾裡面再建立index.js檔案
- 在專案根目錄建立
-
程式如下
-
程式說明
- 第 4 行 : 設定 Method 為
Get的/redis路由 - 第 5 行 : 設定 Method 為
Post的/redis路由
- 第 4 行 : 設定 Method 為
-
-
redisController.js-
建立檔案或目錄
-
在專案根目錄建立
controllers資料夾裡面再建立redisController.js檔案
-
-
程式說明
- 第 11 行 : 從 Query String 中取出名為
key的值 - 第 19 行 : 從 Request Header 中取名為
key的值 - 第 20 行 : 從 Request Header 中取名為
value的值 - 第 24 行 : 設定數值存活時間為
300秒
- 第 11 行 : 從 Query String 中取出名為
-
Step 3. 建立 .gitignore 檔案
-
在專案根目錄建立
.gitignore檔案 -
程式如下
Step 4. 建立部署相關檔案
-
在專案根目錄建立
Procfile檔案 -
程式如下
Push 程式到 GitHub
Step 1. 登入 GitHub
-
網址為
https://github.com/ -
登入成功畫面
Step 2. 在 GitHub 建立 Repository
-
點選上方
Repositories -
點選右方
New -
Repository name欄位輸入一個獨一無二的名稱-
本範例使用
demo-redis當 Repository 的名稱
-
-
點選下方
Create repository -
建立完成畫面
Step 3. Push 程式到 GitHub
- 在
Visual Studio Code的Terminal-
Git 初始化
git init -
把檔案與目錄加至暫存區
git add . -
提交檔案到版本庫
git commit -m "init demo-redis" -
將本地與遠端儲存庫建立連結
-
此指令請參考下圖紅色框框處
-
本範例指令
git remote add origin https://github.com/ArcherHuang/demo-redis.git -
-
上傳到 GitHub
git push -u origin master -
GitHub 可看到所上傳的程式
-
透過 GitHub 部署程式到 Heroku
Step 1. 到 Heroku 頁面
Step 2. 部署程式到 Heroku
-
點選
Deploy頁籤 -
設定
Deployment method- 點選
GitHub
- 點選
-
點選
Connect to GitHub -
Search for a repository to connect to欄位輸入剛才 GitHub 所建立的Repository-
本範的
Repository名稱為demo-redis-
點選
Search -
點選
Connect
-
-
-
使用
Manual deploy部署程式-
點選
Deploy Branch -
部署過程
-
部署完成
-
透過 Postman 測試
Step 1. 在 Chrome 安裝 Postman
-
連結為
https://chrome.google.com/webstore/detail/postman/fhbjgbiflinjbdggehcddcbncdddomop?hl=zh-TW
Step 2. 開啟 Postman
-
Chrome➙應用程式 -
開啟畫面
Step 3. 透過 express 建立 Redis 資料
-
Request URL
[Server-URL]redis-
本範例為
https://demo-redis-express.herokuapp.com/redis -
上方的
[Server-URL]請點選下方圖示紅色處滑鼠右鍵取得複製連結網址取得
-
-
Method
- POST
-
Header
-
key: name
-
value: Archer
-
-
點選
Send -
執行完成畫面
Step 4. 透過 express 取得 Redis 資料
-
Request URL
[Server-URL]redis?key=name-
本範例為
https://demo-redis-express.herokuapp.com/redis?key=name -
上方的
[Server-URL]請點選下方圖示紅色處滑鼠右鍵取得複製連結網址取得
-
-
Method
- GET
-
點選
Send -
執行完成畫面 ( 在所設定的數據存活時間
300秒之內 )- 可取得數據
-
執行完成畫面 ( 在所設定的數據存活時間
300秒之外 )-
會無法取得數據
-