sql >> データベース >  >> NoSQL >> MongoDB

Express/NodeおよびMongoDBでPOSTリクエストに対応する

    body-parserを使用する

    エクスプレスコードに次を追加します:

    global.bodyParser = require('body-parser');
    
    app.use(bodyParser.urlencoded({
      extended: true,
      limit: '50mb',
      parameterLimit: 100000
    }))
    app.use(bodyParser.json({
      limit: '50mb',
      parameterLimit: 100000
    }))
    
    
    app.post('/stored', (req, res) => {
        console.log(req.body);
        db.collection('quotes').insertOne(req.body, (err, data) => {
            if(err) return console.log(err);
            res.send(('saved to db: ' + data));
        })
    });
    

    あなたのフロンテンドで:

    handleSubmit:function(e){
       e.preventDefault();
        let databody = {
            "name": this.state.nameIn,
            "quote": this.state.quoteIn
        }
    
        fetch('http://localhost:5002/stored', {
                method: 'POST',
                body: JSON.stringify(databody),
                headers: {
                    'Content-Type': 'application/json'
                },
            })
            .then(res => res.json())
            .then(data => console.log(data));
    }
    


    1. JSONクエリ条件をMongoDB/Mongoose操作に変換します

    2. 配列フィールドがクエリ配列のサブセットであるMongoDBでドキュメントを検索する

    3. mongoクエリでISO日付をタイムスタンプに変換します

    4. MongoDB-クエリを正規化できません:BadValue不明な演算子:$ meta