Node.js は単純なバックエンド プロジェクトを構築し、Express で POST を使用し、外部 API を呼び出し、データベースに接続します。

Node.js は単純なバックエンド プロジェクトを構築し、Express で POST を使用し、外部 API を呼び出し、データベースに接続します。

1. ディレクトリを作成して初期化する

mkdir node-server && cd node-server && npm init -y

2.エクスプレスをインストールする

npm install express --save

3. body-parser をインストールします (Express で POST を使用します)

npm install body-parser

4. axios をインストールします (Express は外部 API を呼び出します)

npm install axios

5. 新しいindex.jsを作成します。

const express = require('express')
const app = express()
const bodyParser = require('body-parser')
const router = require('./router')//引用模块 
// parse application/x-www-form-urlencoded
//配置模板引擎body-parser一定要在app.use(router)挂载路由之前
app.use(bodyParser.urlencoded({
    
    extended: false}))
// parse application/json
app.use(bodyParser.json())
// 全局 中间件  解决所有路由的 跨域问题
app.all('*', function (req, res, next) {
    
    
    res.header('Access-Control-Allow-Origin', '*')
    res.header('Access-Control-Allow-Headers', 'X-Requested-With,Content-Type')
    res.header('Access-Control-Allow-Methods', 'GET,POST,PUT')
    res.header('Access-Control-Allow-Credentials', true);
    res.header("Content-Type", "application/json;charset=utf-8");
    next()
})
app.use(router)

app.listen(3033, function () {
    
    
    console.log("中间服务已启动!监听端口3033")
})

6. リクエストを処理する新しい router.js を作成し、Express で POST/リクエスト外部インターフェイスを使用します。

//创建路由
const {
    
    Router} = require('express')
const router = new Router()
const axios = require("axios")

const api = 'http://192.168.1.116:8000/api/'

router.post('/inrecognition', (request, response) => {
    
     //处理post请求
    let obj = {
    
    
        deviceId: request.body.deviceId,
        deviceName: request.body.deviceName,
    }
    axios.post(api + 'inrecognition', obj) //请求外部接口
        .then((res) => {
    
    
            response.send(res.data)
        })
        .catch((error) => {
    
    
            console.error(error)
            response.send(error)
        })
})

module.exports = router

7. プロジェクトを開始する

node index.js

または、package.json スクリプトにスタートアップ項目を追加します。 を
ここに画像の説明を挿入
追加した後、プロジェクトは"start": "node ./index.js"npm run startまたはnpm start

8. プロジェクト起動のバックグラウンドは引き続き実行されます。pm2 を使用して
pm2 をグローバルにインストールします

npm install pm2 -g

スタートアップ (package.json で構成することもできます)

pm2 start index.js

9. mysql データベースに接続し
、mysql の依存関係をダウンロードします。

npm install mysql

新しい mysql.js 接続データベースを作成する

const mysql = require("mysql")
const Dbs = {
    
    
    host: 'localhost',
    user: 'root',
    password: 'root',
    database: 'mydb'
}
const connection = mysql.createConnection(Dbs)

connection.connect()
// //查询
// connection.query(`sql`, (err, rows, fields) => {
    
    
//     if (err) throw err
//     console.log(rows)
// })
//
//
// connection.end()
module.exports = connection

router.jsなどの呼び出しが必要なファイルに導入して使用します

const mysql = require('./mysql')

移行

router.get('/getsomething', (req, res) => {
    
    
    mysql.query(`select * from deviceinfo limit 3`, (err, rows, fields) => {
    
    
        if (err) throw err
        res.send(rows)
    })
})

他の Node.js 接続データベース方法については、https://www.cnblogs.com/joyo-w/p/10660952.htmlを参照してください。

拡張: KOAJS https://koa.bootcss.com/

おすすめ

転載: blog.csdn.net/weixin_44167504/article/details/124400353