get:直接解析url地址 藉助 url模塊 var urlObj = modUrl.parse(url,true); urlObj:{pathname,query} post:解析數據 須要 監聽兩個事件 var str = ""; req.on("data",function(data){ str+=data; }); req.on("end",function(){ 解析post數據 str=> user=xx&pass=xxx 藉助 querystring模塊 var POST = qs.parse(str); }); req.method=>"GET" "POST"
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script src="jquery.js"></script> <script> $(function(){ $oUser = $("#user"); $oPass = $("#pass"); $oLogin = $("#login"); $oReg = $("#reg"); $oLogin.click(function(){ $.ajax({ type:"get", url:"/login", data:{ user:$oUser.val(), pass:$oPass.val() }, async:true, success:function(str){ alert(str); } }); }); $oReg.click(function(){ $.ajax({ type:"get", url:"/reg", data:{ user:$oUser.val(), pass:$oPass.val() }, async:true, success:function(str){ alert(str); } }); }); }) </script> </head> <body> 用戶名:<input id = "user" type="text" value="aaa"/><br /> 密碼: <input id ="pass" type="text" value="123"/><br /> <input id = "login" type="button" value="登陸"/> <input id = "reg" type="button" value="註冊"/> </body> </html>
var http = require("http"); var fs = require("fs"); var modUrl = require("url"); var qs = require("querystring"); var users = {aaa:123}; var server = http.createServer(function(req,res){ var url = req.url; var str = ""; req.on("data",function(data){ str += data; }) req.on("end",function(){ var urlObj = modUrl.parse(url,true); url = urlObj.pathname; var GET = urlObj.query; var POST = qs.parse(str); var params = req.method == "POST" ? POST : GET; var username = params.user; var password = params.pass; if(url == "/login"){ if(users[username]){ if(users[username] == password){ res.end(JSON.stringify({"error":1,"msg":"登錄成功"})); }else{ res.end(JSON.stringify({"error":0,"msg":"用戶名或者密碼錯誤"})); } }else{ res.end(JSON.stringify({"error":0,"msg":"用戶名或者密碼錯誤"})); } }else if(url == "/reg"){ if(users[username]){ res.end(JSON.stringify({"error":0,"msg":"用戶名已存在"})); }else{ users[username] = password; res.end(JSON.stringify({"error":1,"msg":"註冊成功"})); } }else{ fs.readFile("www"+url,function(err,data){ if(err){ res.end("404"); }else{ res.end(data); } }) } }) }); server.listen("9000",function(){ console.log("服務器已打開!"); })
打卡服務器
登陸html
註冊
vue
引入模塊:
1.本身寫的模塊在同級目錄裏,經過"./mode.js"引入,
2.放到node_modules文件夾中,經過 "mode.js" 訪問.node
exports一個一個的導出.mysql
module.exports 批量導出.jquery
批量導出優先級最高,不覆蓋,與次序無關面試
模塊組成:ajax
repl - 交互式解釋器 面試 沒用 命令行編寫jssql
npm install 模塊名稱
npm uninstall 模塊名稱
npm update 模塊名稱
npm update 批量更新npm
npm search 搜索包 模糊查詢
npm home jquery 打開模塊的官網json
npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install -g nrm
nrm ls 查看全部的鏡像源
nrm test 測速
nrm use cnpm 使用鏡像源
npm install jquery
npm install jquery
npm i jquery
npm uninstall jquery
npm un jquery
npm install jquery --save -S
npm install jquery --save-dev -D
npm i -S jquery
npm i -D jquery
dependencies -S 項目依賴 mysql
devDependencies -D 開發依賴 gulp
npm init -y
require()
exports
module.exports
一、數量
二、優先級module 跟順序無關
三、module.exports == exports 模塊裏面最終導出的module.exports
require 引入自定義模塊 須要加上 ./
若是不想加 ./ 須要把本身的模塊(.js)放到node_modules目錄裏
一、工程文件 npm init -y 二、package.json name 必須惟一 main 入口文件
npm whoami
包:
qd1802.js
var qd1802 = "666"; var address = "CBD" exports.qd1802 = qd1802; exports.address = address;
package.json
{ "name": "qd1802", "version": "1.0.3", "description": "\"青島1802測試專用!\"", "main": "qd1802.js", "dependencies": { "jquery": "^3.3.1" }, "devDependencies": {}, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [ "青島1802測試專用!" ], "author": "szc", "license": "ISC" }
必須保存一個版本: