nodeノート——jsonファイルの書き込み


小さいdemoの大まかな内容は以下の通りです:1.Vueフレームの書き込みの先端2.axios呼び出しインタフェース3.インタフェースを介してjsonを書き込む.ローカルエリアネットワーク内のすべてのコンピュータにアクセス可能
まず最初にinstallが必要です
npm install axios

バックエンドインストールexpressフレームワーク
npm install express --save
npm install body-parser --save
npm install cookie-parser --save
npm install multer --save

フロントエンドページ:
    write() {
      this.axios
        .get(`http://    ip   :8081/?name=${this.name}&score=${this.score}`)
        .then(res => {
          console.log("res --->", res);
        })
        .catch(err => {
          console.log("err --->", err);
        });
    }

内容は比较的に简単で、1つのwrite方法を书いてaxiosを通じてインタフェースを呼び出してそして自分のIPアドレスを入力するのはローカルエリアネットワーク内でアクセスするためで、本机が1つのサーバーであることに相当して、ローカルエリアネットワーク内の他の人の书いたnameとscoreはすべて本机の8081ポートにアクセスして本机のJSONファイルに书き込みます
Api.js
var fun = require('./fun')
var express = require('express');
var app = express();
var bodyParser = require('body-parser');

app.all("*", function (req, res, next) {
    //         ,*          
    res.header("Access-Control-Allow-Origin", "*");
    //   header  
    res.header("Access-Control-Allow-Headers", "content-type");
    //          
    res.header("Access-Control-Allow-Methods", "DELETE,PUT,POST,GET,OPTIONS");
    if (req.method.toLowerCase() == 'options')
        res.send(200);  // options        
    else
        next();
})
//    application/x-www-form-urlencoded     
var urlencodedParser = bodyParser.urlencoded({ extended: false })

app.use('/public', express.static('public'));

app.get('/', function (req, res) {
    fun.writeJson(req.query)
})

var server = app.listen(8081, function () {
    var host = server.address().address
    var port = server.address().port
    console.log("")
    console.log("")
})

funはもう一つのJSON書き込みを提供する関数で、このApiの主な機能はドメインをまたいでインタフェースを呼び出し、appを見ることができる.getはfunを呼び出した.writeJsonメソッド
fun.js
var fs = require('fs');
//       id               ,                   ,          
//  json    
function writeJson(params) {
    //  json     
    fs.readFile('../src/assets/score.json', function (err, data) {
        if (err) {
            return console.error(err);
        }
        var person = data.toString();//             
        person = JSON.parse(person);//       json  
        person.data.push(params);//      push      
        person.total = person.data.length;//       ,         
        var str = JSON.stringify(person);//  nodejs                 ,   json            json   
        fs.writeFile('../src/assets/score.json', str, function (err) {
            if (err) {
                console.error(err);
            }
            console.log('----------    -------------');
        })
    })
}

module.exports = {
    writeJson
}

これがJSONファイルを書き込む方法です
ローカルエリアネットワーク内のパソコンにアクセスできるようになるにはnodeのサービスが必要です.
node Api.js

前段でVueプロジェクトのconfig/indexを修正する必要があります.jsはhostのlocalhostを自分のIPアドレスに変更し、npm run devはIPアドレスにアクセスすることでローカルエリアネットワーク内でページにアクセスできます.