NODEJSを使用したユーザログイン


目的:この記事では、マングースモデル、ノード、ルータを使用してユーザーを作成する方法を知っている.
この記事を完了する前に事前に必要な場合は、Visual Studioのコード、ノードパッケージマネージャ(NPM)、ノード、郵便配達人、Mongoコンパスを含むすべての事前に必要なツールを既にインストールする必要があります.

モデルを作成する


const mongoose = require('mongoose')

const DataSchema = mongoose.Schema({
    FirstName : {type: String},
    LastName : {type: String},
    EmailAddress : {type: String},
    MobileNumber : {type: String},
    City : {type: String},
    UserName : {type: String},
    Password : {type: String}
});

const ProfileModel = mongoose.model('Profile', DataSchema)
module.exports = ProfileModel;

コントローラを作成する


まずProfilemodelをインポートします.body dataを格納する変数reqbodyを宣言します.Profilemodelモデルを使用してユーザーを作成する
const ProfileModel = require("../models/ProfileModel");


exports.CreateProfile = (req, res) => {

    let reqBody = req.body;
    ProfileModel.create(reqBody, (err, data) => {
        if(err){
            res.status(400).json({status: "Failed to user create", data: err})
        }else{
            res.status(200).json({status: "Successfully user created", data: data})
        }
    })
}

exports.UserLogin = (req, res) => {

    let UserName = req.body['UserName'];
    let Password = req.body['Password'];
    // res.status(200).json({status: "Success", data: Password})

    ProfileModel.find({UserName, Password}, (err, data) => {
       if(err){
        res.status(400).json({status: "Failed to login", data: err})
       }else{
        if(data.length > 0){
            res.status(200).json({status: "Successfully Login", data: data})
        }else{
            res.status(401).json({status: "Unauthorized"})
        }
       }
    })
}

The find() function is used to find particular data from the MongoDB database


デフォルトの設定


// Basic import
const express = require('express');
const router = require('./src/routes/api')
const app = new express();
const bodyParser = require('body-parser')

// Database lib import
const mongoose = require('mongoose')

// Body parser implement
app.use(bodyParser.json())

// MongoDB database connection
let uri = 'mongodb://127.0.0.1:27017/PracticeDB'
let options = {user: '', pass: ''}
mongoose.connect(uri, options, (err) => {
    if(err){
        console.log(err)
    }else{
        console.log('Database Connection Success')
    }
})

// Routing Implement
app.use('/api/v1', router)

// Undefined Route Implement
app.use("*", (req, res) => {
    res.status(404).json({status: "Failed", data: "Not Found"})
})

module.exports = app;

ルート設定( API . js )


const express = require('express');
const ProfileController = require('../controller/ProfileController')
const router = express.Router();

router.post('/CreateProfile', ProfileController.CreateProfile)
router.post('/UserLogin', ProfileController.UserLogin)

module.exports = router;

インデックスファイル


const app = require('./app')

app.listen(5000, function(){
    console.log('Server run at @5000 port')
})
さあ、郵便屋さんを開いて

次に、ユーザーに基本的な情報を与え、ボタンをクリックして

間違った情報を与えるならば

読書ありがとう.ハッピージャーニー.

リファレンス


Mongoose find() Function