C#--運動控制05--日誌顯示(ListView和imageList控制元件使用)
node
是基於chome(谷歌瀏覽器)的v8引擎 來實現的一個javascript執行環境(這個環境可以單獨的在任何作業系統上執行 從而可以讓js的觸角延伸到伺服器端)
node能在伺服器端執行js有啥用?
因為js預設情況下不能直接讀取本地計算及硬碟上的東西 但是node可以讓js執行在伺服器端 那麼node就把js變成了伺服器端語言 那麼js就可以讀取計算及硬碟上的東西(可以訪問資料庫)
node特點
單執行緒
非阻塞式io
node的安裝
repl互動性直譯器
就是可以在cmd中來寫js程式碼 因為node是一個js的執行環境 可以讓js在脫離瀏覽器的情況下來單獨執行
node怎麼執行js程式碼?
1.cd 到你要執行node的資料夾下
2.在cmd中輸入 node空格你要執行的js檔名 即可執行
魔術變數/預定義變數
就是node提前定義好的一些變數 代表某些操作
__dirname 執行這個檔案的資料夾的絕對路徑
__filename 當前js指令碼檔案的絕對路徑
express框架
基於node的一個企業級應用框架 他裡面封裝了大量的http相關工具可以讓我們非常方便的創建出 對需要的後臺服務
1.下載 npm install --save express
2.建立一個資料夾名字隨便起 用來存放我們的後臺路由檔案 並且建立路由檔案
// 1.引用express
let express=require("express");
// 2得到路由功能
let router=express.Router()
// 3.建立對應的後臺路由介面 req請求 res相應
// router.get("後臺介面名",function(req,res){
// 你的邏輯
// })
router.get("/user/zhuce",(req,res)=>{
res.send({msg:"註冊"})
})
// 4.暴露
module.exports=router
3.建立http服務並且把這些路由全部關聯起來
// 1.引用express
let express=require("express")
let app=express()
// 2.引用路由檔案
let demoa=require("./router/demoa.js")
let demob=require("./router/demob.js")
// 3.使用路由
app.use("/denglu",demoa)
app.use("/zhuce",demob)
// 4.設定埠
app.listen(8888)
mongodb
mongodb是什麼?
是一個數據庫
非關係型資料庫
關係型資料庫 mysql oracle sqlserver db2
非關係型資料庫 mongodb redis
關係與非關係型資料庫區別
關係型 預設情況下慢 穩定性高 背靠大山 庫 表 欄位
非關係型 預設情況下快 穩定性低 單打獨鬥 庫 集合 文件
新增服務: mongod.exe --install --dbpath 你儲存的資料目錄(你剛才新建的db資料夾路徑) --logpath 你的資料目錄(你的data資料夾路徑)\log.txt
操作
增 insert
db.集合名.insert({key:val,key2:val2})
刪
db.集合名.remove({你要刪除的key:你要刪除的對應val})
改
db.集合名.update({你要修改誰的key:你要修改誰的val} , {$set:{改那個key:"改的val"}})
查 find
db.集合名.find()
limit 讀取指定條數的資料
skip 跳過指定數量的資料
mongoose
是一個外掛 用來方便我們使用node連線mongodb
1.下載 npm install --save mongoose
token
就是一段用於儲存使用者登入狀態的加密字串
JWT----jsonwebtoken 來生成加密的字串
下載 npm install --save jsonwebtoken
生成token
sign(你要加密的資料,祕鑰(越亂越好))
登陸成功之後生成一個包含登入狀態的token
解密token
verify("你要解密的token",加密時候的祕鑰,回撥函式)
restful api
在傳統的資料互動過程中 用到get/post請求 但是get/post 並不能很好的描述這個請求
restful api通過他 就可以簡單的來進行對於當前介面的作用進行描述
GET 讀取資料
POST 傳送資料
PUT 修改 全部修改
PATCH 修改 部分修改
DELETE 刪除