Node.js實(shí)現(xiàn)http請(qǐng)求服務(wù)與Mysql數(shù)據(jù)庫(kù)操作方法詳解
前言
nodejs是一門服務(wù)端的語(yǔ)言,同時(shí)也是現(xiàn)在前端必須要會(huì)的一門語(yǔ)言。
簡(jiǎn)單地說,node.js就是運(yùn)行在服務(wù)端的javascript。本文通過實(shí)現(xiàn)http請(qǐng)求響應(yīng)和連接數(shù)據(jù)庫(kù)進(jìn)行增刪改查來直觀的體會(huì)一下node.js
node實(shí)現(xiàn)http請(qǐng)求服務(wù)
1.導(dǎo)入http請(qǐng)求模塊
const http = require('http');這是nodejs內(nèi)嵌的API,所以可以直接使用,就像是python里import包一樣。
2.創(chuàng)建一個(gè)httpserver服務(wù)
http.createServer(function(request,response){})3.添加輸出內(nèi)容
response.end("<strong>hello server!!</strong>");這個(gè)語(yǔ)句要加在httpserver服務(wù)的回調(diào)函數(shù)中
4.為瀏覽器添加解析
response.writeHead(200,{'Content-type':'text/html'});因?yàn)闉g覽器不認(rèn)識(shí)什么是hello server,所以我們要讓瀏覽器認(rèn)識(shí)它,就要告訴瀏覽器將以text-html去解析hello server這段數(shù)據(jù),以html方式解析瀏覽器就知道strong標(biāo)簽什么意思了。同樣這個(gè)語(yǔ)句要寫在回調(diào)函數(shù)中。
5.添加監(jiān)聽端口
這里結(jié)合前兩個(gè)語(yǔ)句把創(chuàng)建的httpserver服務(wù)補(bǔ)全:
http.createServer(function(request,response) {
response.writeHead(200,{'Content-type':'text/html'})
response.end("<strong>hello server!!</strong>");
}).listen(8888);這里我們的http請(qǐng)求的端口號(hào)是8888
最后我們整理一下完整的http請(qǐng)求服務(wù)代碼:
const http = require('http');
http.createServer(function(request,response) {
response.writeHead(200,{'Content-type':'text/html'})
response.end("<strong>hello server!!</strong>");
}).listen(8888);
console.log("您啟動(dòng)的服務(wù)是: http://localhost:8888已啟動(dòng)成功");6.啟動(dòng)運(yùn)行服務(wù)
在集成終端中運(yùn)行:

看到這句話就說明我們的http請(qǐng)求服務(wù)成功了

在瀏覽器中輸入:http://localhost:8888/qu'fang'wen
可以看到瀏覽器中輸出了加粗了的hello server

回到第四步,如果我們把 'text/html' 改為 'text/plain' ,也就是文本解析,瀏覽器中會(huì)輸出什么呢?
注意:我們修改操作后要保存js文件,在終端中重新輸入前要按 Ctrl+c才行
我們重新啟動(dòng)服務(wù)再刷新瀏覽器:

可以看到如果我們告訴瀏覽器以文本解析的話,strong標(biāo)簽會(huì)原封不動(dòng)的輸出出來。那么這就是我們學(xué)習(xí)nodejs的第一個(gè)入門案例了。
node操作數(shù)據(jù)庫(kù)
下面我們學(xué)習(xí)一下用node來操作數(shù)據(jù)庫(kù)
nodejs的官方文檔里沒有給我們提供操作數(shù)據(jù)庫(kù)的模塊,那怎么辦呢?我們可以引入第三方的模塊
1.安裝mysql依賴
npm install mysql
我們?cè)陧?xiàng)目工程的終端里直接執(zhí)行這個(gè)命令就行:

然后在我們的項(xiàng)目目錄中就多了一個(gè)node_modules文件夾:

2.導(dǎo)入mysql依賴包
var mysql = require("mysql");3.配置數(shù)據(jù)連接信息
mysql.createConnection({
host:"127.0.0.1",
post:3306,
user:"root",
password:'111',
database:"testdb"
});這里host就是我們的本機(jī)ip,post是數(shù)據(jù)庫(kù)端口,user是用戶名,然后就是密碼,database是我們建立的數(shù)據(jù)庫(kù):

我們建完數(shù)據(jù)庫(kù)之后,在里面新建一個(gè)表,這里就叫user了,然后向表里插入兩條數(shù)據(jù):

4.創(chuàng)建一個(gè)mysql的connection對(duì)象
我們定義一個(gè)connection變量來對(duì)連接的信息進(jìn)行接收:
var connection = mysql.createConnection({
host:"127.0.0.1",
post:3306,
user:"root",
password:'111',
database:"testdb"
});5.開辟連接
connection.connect();
6.執(zhí)行語(yǔ)句
connection.query("select * from user",function(error,results,fields) {
//如果查詢出錯(cuò),直接拋出
if(error)throw error;
//查詢成功
console.log("results = ",results);
})這里我們直接查詢一下數(shù)據(jù)庫(kù)里的所有數(shù)據(jù),然后把results結(jié)果集輸出出來
7.關(guān)閉連接
connection.end();
把所有部分整理一下:
var mysql = require("mysql");
var connection = mysql.createConnection({
host:"127.0.0.1",
post:3306,
user:"root",
password:'111',
database:"testdb"
});
connection.connect();
connection.query("select * from user",function(error,results,fields) {
if(error)throw error;
console.log("results = ",results);
})
connection.end();8.運(yùn)行并查看結(jié)果

可以看到在終端中輸出了我們?cè)跀?shù)據(jù)庫(kù)中添加的所有數(shù)據(jù)
這樣通過nodejs操作數(shù)據(jù)庫(kù)我們也簡(jiǎn)單實(shí)現(xiàn)了。
到此這篇關(guān)于Node.js實(shí)現(xiàn)http請(qǐng)求服務(wù)與Mysql數(shù)據(jù)庫(kù)操作方法詳解的文章就介紹到這了,更多相關(guān)Node.js http請(qǐng)求服務(wù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- node.js 開發(fā)指南 – Node.js 連接 MySQL 并進(jìn)行數(shù)據(jù)庫(kù)操作
- Node.js數(shù)據(jù)庫(kù)操作之查詢MySQL數(shù)據(jù)庫(kù)(二)
- Node.js下向MySQL數(shù)據(jù)庫(kù)插入批量數(shù)據(jù)的方法
- Node.js操作mysql數(shù)據(jù)庫(kù)增刪改查
- Node.js數(shù)據(jù)庫(kù)操作之連接MySQL數(shù)據(jù)庫(kù)(一)
- node.js平臺(tái)下的mysql數(shù)據(jù)庫(kù)配置及連接
- 從零學(xué)習(xí)node.js之mysql數(shù)據(jù)庫(kù)的操作(五)
- Linux下為Node.js程序配置MySQL或Oracle數(shù)據(jù)庫(kù)的方法
- Node.js實(shí)現(xiàn)連接mysql數(shù)據(jù)庫(kù)功能示例
- Node.js對(duì)MySQL數(shù)據(jù)庫(kù)的增刪改查實(shí)戰(zhàn)記錄
- node.js如何操作MySQL數(shù)據(jù)庫(kù)
- node.js對(duì)于數(shù)據(jù)庫(kù)MySQL基本操作實(shí)例總結(jié)【增刪改查】
相關(guān)文章
Node.js+Express+Mysql 實(shí)現(xiàn)增刪改查
這篇文章主要介紹了Node.js+Express+Mysql 實(shí)現(xiàn)增刪改查,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04
WebSocket+node.js創(chuàng)建即時(shí)通信的Web聊天服務(wù)器
這篇文章主要為大家詳細(xì)介紹了WebSocket+node.js創(chuàng)建即時(shí)通信的Web聊天服務(wù)器的相關(guān)資料,感興趣的小伙伴們可以參考一下2016-08-08
關(guān)于npm主版本升級(jí)及其相關(guān)知識(shí)點(diǎn)總結(jié)
npm是Node.js默認(rèn)的包管理器,以javascript?編寫的軟件包管理系統(tǒng)用于分享和使用代碼,下面這篇文章主要給大家介紹了關(guān)于npm主版本升級(jí)及其相關(guān)知識(shí)點(diǎn)總結(jié)的相關(guān)資料,需要的朋友可以參考下2022-12-12
淺談express 中間件機(jī)制及實(shí)現(xiàn)原理
本篇文章主要介紹了淺談express 中間件機(jī)制及實(shí)現(xiàn)原理,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-08-08
Ubuntu22.04系統(tǒng)下升級(jí)nodejs到v18版本
ubuntu默認(rèn)安裝的nodejs版本比較老,要安裝到最新的,下面這篇文章主要給大家介紹了關(guān)于Ubuntu22.04系統(tǒng)下升級(jí)nodejs到v18版本的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-06-06
Node.js項(xiàng)目中調(diào)用JavaScript的EJS模板庫(kù)的方法
這篇文章主要介紹了Node.js項(xiàng)目中調(diào)用JavaScript的EJS模板庫(kù)的方法,通過EJS模板引擎可以制作出維護(hù)性良好的HTML代碼結(jié)構(gòu),需要的朋友可以參考下2016-03-03

