【问题标题】:Database is not creating using express and node.js数据库未使用 express 和 node.js 创建
【发布时间】:2016-10-26 15:25:03
【问题描述】:

我正在使用 express 和 mongodb 制作简单的注册页面,这是我的 html

<body>
    
  <form>
    <div align="center" ng-controller="regiCtrl">
        <table>
          <tr>
            <td>User Name :</td>
        
          <td><input type="text" ng-model="user.userName" />
          </td></tr>
         &nbsp; &nbsp;
          <tr>
            <td>Password :</td>
        
          <td><input type="password" ng-model="user.password" />
          </td></tr>
          &nbsp; &nbsp;
          <tr>
          
    
          <tr><td>
            
              <input type="button" value = "Submit" ng-click="regi()"></td>
            <td>
            </td></tr>
        </table>
        
    </div>
    
</form>
</body>

这是我的控制器

lyfee.controller('regiCtrl',['$scope','$http', function($scope,$http) {
   $scope.user = {};
    $scope.regi = function () {
      //  var data = {User: $scope.user }
        console.log($scope.user);
       
       $http.post('/regi',$scope.user);
       console.log("post request send");
       
    } 
}]);
看看我的 server.js

var express = require('express');
var app = express();

var port = process.env.PORT || 80;

var cookieParser = require('cookie-parser');
var session = require('express-session');
var bodyParser = require('body-parser');
var jwt = require('jsonwebtoken');

//Used for open index.html by default(open html page which one will be in public folder)
app.use(express.static(__dirname + "/public"));

// configure app to use bodyParser()
// this will let us get the data from a POST
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());


app.use(cookieParser());
app.use(session({secret: 'anystringoftext',
         saveUninitialized: true,
         resave: true}));


app.use('/', function(req, res){
  //res.send('Our First Express program!');
  //res.redirect('index.html');
  //console.log(req.cookies);
 // console.log(req.session);
 console.log("HELLO WE ARE IN SERVER");
});

var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/lyfee_module');
console.log("Connection created");
var Userschema = require('./models/dbSchema'); 


 app.post('/regi',function(req,res){
     console.log("post request get");
   /*  
     var schema        =  new Userschema();
     schema.Firstname  =  req.body.Firstname;
     schema.Lastname   =  req.body.Lastname;
     schema.City       =  req.body.city;
     schema.Email      =  req.body.email;
     schema.Userid     =  req.body.userid;
     schema.Password   =  req.body.password;
     
     console.log(schema.Firstname);
   //  console.log(schema.Lastname);
   
     */ 
     console.log(req);
     
    var schema = new Userschema({
  userName  :  req.body.userName,
  password   :  req.body.password,
  
});
      
     console.log(req.body);
     console.log(schema);
  schema.save(function(err) {
            if (err)
              res.send(err);

            res.json({ message: 'Record Inserted', userName: req.body.userName, password: req.body.password});
        });
        
 });
     
app.listen(port);
console.log('Server running on port: ' + port);

这是我的 config.js

module.export = {
    'secret' : 'lyfee',
    'database': 'mongodb://localhost/lyfee_module'
};

最后是我的数据库

var mongoose = require('mongoose');


var User = new mongoose.Schema({
   userName: String,
   password:  String,
    
    
});
//console.log(User);
module.exports = mongoose.model('user', User);

我的条目没有存储在数据库中,即使带有 lyfee_module 的数据库没有创建请帮助我,我该如何解决这个问题?

【问题讨论】:

  • 终端有错误吗?任何错误发送到浏览器? mongoDB 正在运行吗?服务器在运行吗?请求是否到达服务器?
  • @NidhinDavid 终端没有显示错误,浏览器没有发送任何错误,mongodb 和服务器都在运行。请求到达服务器但未到达 app.post('/regi', function(req,res){})。

标签: node.js mongodb express mongoose mean-stack


【解决方案1】:

我认为一切看起来都很好,只需在 config.js 中添加 mongodb 的运行端口,例如 mongodb://localhost:27017/

【讨论】:

  • 同时添加您的表名并检查 mongo 实例是否正在运行 mongodb://localhost:27017/lyfee_module
  • @Daniyal Ahmed 默认会查找端口 27017。
【解决方案2】:

您是否尝试过对mongoose.connect() 使用回调?我建议您尝试以下方法,看看是否有任何错误:

mongoose.connect(mongoUrl, err => {
  console.log(err ||  `MongoDB connected at ${mongoUrl}`);
})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-07
    • 2021-07-20
    • 1970-01-01
    相关资源
    最近更新 更多