摘要:前言列表項(xiàng)目是一個(gè)簡介而靈活的應(yīng)用框架提供的一系列強(qiáng)大特性幫助你創(chuàng)建各種應(yīng)用,和豐富的工具。返回的對(duì)象是一個(gè)鍵值對(duì),當(dāng)為的時(shí)候,鍵值對(duì)中的值就為或形式,為的時(shí)候,則可為任何數(shù)據(jù)類型。以上兩行代碼已經(jīng)覆蓋了大部分的使用場景。
前言
列表項(xiàng)目Express是一個(gè)簡介而靈活的node.js Web應(yīng)用框架提供的一系列強(qiáng)大特性幫助你創(chuàng)建各種 Web 應(yīng)用,和豐富的HTTP工具。
正文
一個(gè)簡單的express框架實(shí)例
// 下載express cnpm install express --save // 引用 import express from "express"; const app = express(); // 使用express監(jiān)聽端口號(hào), app.listen(8080, function() { console.log("listen to 8080......"} ) cnpm install nodemon --save // 代替 node 來啟動(dòng)應(yīng)用 // 在package.json的scripts中寫入下面這句代碼,用來啟動(dòng)應(yīng)用 ‘dev’: "nodemon node build/app.js" /*標(biāo)注: app.js是你入口文件的名稱*/
通過express常用的中間件‘body-parser’來實(shí)現(xiàn)解析JSON、Raw、文本、URL-encoded格式的請求體?!産odyParser.urlencoded’返回的對(duì)象是一個(gè)鍵值對(duì),當(dāng)extended為false的時(shí)候,鍵值對(duì)中的值就為"String"或"Array"形式,為true的時(shí)候,則可為任何數(shù)據(jù)類型。以上兩行代碼已經(jīng)覆蓋了大部分的使用場景。如果需要深入探究body-parser的朋友請參考官方文檔。
cnpm install body-parser --save; import bodyParser from "body-parser"; app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false }));
處理不同的請求體
app.use("*", (request, respose, next) => { res.header("Access-Control-Allow-Origin", "*"); // 指定允許其他域名訪問 res.header("Access-Control-Allow-Headers", "Origin,X-Requested-With,content-Type,Accept,token,sysCode"); // 響應(yīng)頭設(shè)置 res.header("Access-Control-Allow-Methods", "POST,GET"); // 響應(yīng)類型 res.header("X-Powered-By", "3.2.1"); // 隱藏響應(yīng) res.header("Content-Type", "application/plain;charset=utf-8"); // 映射請求信息 next(); })
express 路由
路由是指應(yīng)用程序的端點(diǎn)如何響應(yīng)客戶端的請求,有關(guān)路由的詳解請參閱基本路由;
const router = express.Router(); router.get("/api/addcart", (req, res) => { res.send("hello world") })
連接mysql
// 下載mysql cnpm install mysql --save; // 引入mysql import mysql from "mysql"; // 準(zhǔn)備工作已經(jīng)完成,下面這段代碼是連接你的mysql庫。 const connection = mysql.createConnection({ host: "localhost", user: "root", password: "root", port: "****", // 你數(shù)據(jù)庫設(shè)置的端口 database: "****" // 你數(shù)據(jù)庫的名稱 }) connection.connect(); // 然后將你寫入的名稱拋出,以便后續(xù)使用 export default connection; // 使用sql語句的增刪改查,來完成你所需要的所有效果!??! connection.query("select * from checkuser", function (req, result) { ck(result) })最后
本人第一次寫文章,寫的有所不周到的地方還請各位諒解,最后附上本人的github地址,上面有本文所涉及到的所有代碼,以及一些簡單的登錄,圖片上傳,sql語句的增刪改查。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/99103.html
摘要:了解原理之前,你需要先掌握的基本用法?;窘Y(jié)構(gòu)先回顧一下使用的的過程,首先是把模塊倒入,然后當(dāng)做方法執(zhí)行,在返回值中調(diào)用處理路由,調(diào)用監(jiān)聽端口。大多數(shù)中間件也是這個(gè)原理,如模塊,給它加個(gè)屬性即可。 了解 express 原理之前,你需要先掌握 express 的基本用法。 關(guān)于 express 的介紹請看 express 官網(wǎng)。 基本結(jié)構(gòu) 先回顧一下 express 使用的的過程,首先...
摘要:框架應(yīng)用程序是一個(gè)保持最小規(guī)模的靈活的應(yīng)用程序開發(fā)框架,為和移動(dòng)應(yīng)用程序提供一組強(qiáng)大的功能。路由基本使用下載新建一個(gè)文件,然后輸入然后運(yùn)行打開就出現(xiàn)請求和響應(yīng)應(yīng)用使用回調(diào)函數(shù)的參數(shù)和對(duì)象來處理請求和響應(yīng)的數(shù)據(jù)。 Express框架 Web 應(yīng)用程序 Express 是一個(gè)保持最小規(guī)模的靈活的 Node.js Web 應(yīng)用程序開發(fā)框架,為 Web 和移動(dòng)應(yīng)用程序提供一組強(qiáng)大的功能。 AP...
摘要:簡介是最常使用的中間件實(shí)際上雖然他名義上是一個(gè)中間件但是實(shí)際上已經(jīng)儼然成為了的一個(gè)不可或缺的部分在的文檔中操作的部分就一個(gè)方法和一個(gè)屬性但是實(shí)際上如果你不使用中間件這些方法是根本就不存在的先從操作說起如果有一個(gè)純凈的像這樣我們?nèi)绾尾倏v顯 簡介 cookie-parser是Express最常使用的中間件,實(shí)際上雖然他名義上是一個(gè)中間件但是實(shí)際上已經(jīng)儼然成為了Express的一個(gè)不可或缺的...
摘要:基于以上原因,很多管理都是基于實(shí)現(xiàn)的。在經(jīng)過中間件的時(shí)候就會(huì)自動(dòng)完成的有效性驗(yàn)證延期重新頒發(fā)以及對(duì)中數(shù)據(jù)的獲取了。上述代碼只是對(duì)于請求的靜態(tài)處理,整個(gè)用戶管理的另一個(gè)方面則是狀態(tài)的切換用戶的登陸登出以及用戶數(shù)據(jù)的獲取。 基礎(chǔ)概念 Session管理是Web Application的基礎(chǔ)也是一個(gè)老生常談的話題。為了方便后文的展開,更重要的是確認(rèn)自己清晰的理解了整個(gè)Session管理的概...
閱讀 1789·2023-04-25 14:33
閱讀 3389·2021-11-22 15:22
閱讀 2188·2021-09-30 09:48
閱讀 2700·2021-09-14 18:01
閱讀 1750·2019-08-30 15:55
閱讀 3012·2019-08-30 15:53
閱讀 2150·2019-08-30 15:44
閱讀 657·2019-08-30 10:58