Axios.Post не отправляет данные в mongodb, работающий на node.js - PullRequest
0 голосов
/ 14 октября 2018

поэтому у меня есть вызов POST, который, кажется, работает, единственная проблема заключается в том, что данные не отправляются в базу данных.См. Ниже фрагменты кода для импорта: Спасибо заранее!

module.js

var mongoose = require ( 'mongoose' );

var CryptoWallet = new mongoose.Schema({
  publicK:{
    bsonType: "String"
  },
  seed:{
    bsonType: "String"
  }
},{
    collection : 'test1a' //
  });

module.exports = mongoose.model('test1', CryptoWallet); //Change from test1

routes.js

var CryptoWallet = require('../models/CryptoWallet-model');

//Defined store route --Need to get the right functions to generate data
router.route('/add/createCryptoWallet').post(function(req, res){

   var crypto_wallet = new CryptoWallet(req.headers)
     console.log("The cyrptoWallet on create", crypto_wallet);
     //console.log(wallet);
      crypto_wallet.save()
      .then(crypto_wallet =>{
        res.status(200).json({status: 'CryptoWallet addded succesfully'});//,CryptoWalletObject: crypto_wallet
      })
      .catch(err => {
        res.status(400).send("unable to save CryptoWallet to databse");
      });
});

main.js

...
var address = "Ox" + addresses;
                    var seedPhrase = seed;
                    html = html + "<p><b>Address:</b>" + address  + "</p>"; //html = html + "<p><b>Address: </b>0x" + address  + "</p>";        
                }
                document.getElementById("address").innerHTML = html;
                    console.log(seedPhrase)
                    console.log(typeof seedPhrase)
                    console.log(address)
                    console.log(typeof seedPhrase)
                    addToAPI(seedPhrase,address); //address
            }
        });
    });
}
        function addToAPI(seedPhrase,address){
            let NewUser = {
         publicK:address,
                 seed: seedPhrase
             }
      console.log(NewUser);
      axios.post('http://localhost:3000/CryptoWallet/add/createCryptoWallet', NewUser)
      .then((response)=>{
        console.log(response);
                console.log(response.data);
      })
      .catch((error)=>{
        console.log(error);
      });
    }

Это ответ из консоли в Интернете: введите описание изображения здесь и консоль на моем терминале: введите описание изображения здесь

Спасибо, ребята, пожалуйста, дайте мне знать, если мне не хватает какой-либо информации

Ответы [ 2 ]

0 голосов
/ 15 октября 2018

Это была действительно глупая ошибка: routes.js изменил bsonType на type и "string" на string

0 голосов
/ 14 октября 2018

В вашем routes.js вы не получаете объект NewUser, который вы передаете из вашего main.js в методе POST.Вы можете получить его, используя объект req.body.

Также, чтобы избежать предупреждения, вы должны передать указанный объект в функцию connect, что-то вроде следующего:

mongoose.connect('mongodb://user:password@sample.com:port/dbname', { useNewUrlParser: true })
...