亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

Express js/Node js 中的錯(cuò)誤 enpoint 登入無法正常運(yùn)作
P粉428986744
P粉428986744 2023-09-12 09:51:36
0
1
729

我有一個(gè)簡(jiǎn)單的 CRUD 應(yīng)用程序,可以讓用戶註冊(cè)和登錄 在 General.js 中有一個(gè)註冊(cè)端點(diǎn),這工作正常並且登入列印

"message": "登入無效。請(qǐng)檢查使用者名稱和密碼"

- index.js
- router
- - general.js
- - auth_users.js
- - booksdb.js

在郵差註冊(cè)

當(dāng)我在 auth_users.js 中登入端點(diǎn)時(shí)

這是auth_users.js的登入程式碼,它有登入端點(diǎn),主要是負(fù)責(zé)登入的express函數(shù)regd_users.post()

const express = require('express');
const jwt = require('jsonwebtoken');
let books = require("./booksdb.js");
const regd_users = express.Router();

let users = [];

const isValid = (username)=>{ //returns boolean
//write code to check is the username is valid
let userswithsamename = users.filter((user)=>{
    return user.username === username
  });
  if(userswithsamename.length > 0){
    return true;
  } else {
    return false;
  }
}

const authenticatedUser = (username,password)=>{ //returns boolean
//write code to check if username and password match the one we have in records.
let validusers = users.filter((user)=>{
    return (users.username === username &&users.password === password)
  });
  if(validusers.length > 0){
    return true;
  } else {
    return false;
  }
}
 
//only registered users can login
regd_users.post("/login", (req,res) => {

    const username = req.query.username;
    const password = req.query.password;
    if (!username || !password) {
        return res.status(404).json({message: "Error logging in"});
    }
    if (authenticatedUser(username,password)) {
      let accessToken = jwt.sign({
        data: password
      }, 'access', { expiresIn: 60 * 60 });
      req.session.authorization = {
        accessToken,username
    }
    return res.status(200).send("User successfully logged in");
    } else {
      return res.status(208).json({message: "Invalid Login. Check username and password"});
}
});

// Add a book review
regd_users.put("/auth/review/:isbn", (req, res) => {
  //Write your code here
  return res.status(300).json({message: "Yet to be implemented"});
});

module.exports.authenticated = regd_users;
module.exports.isValid = isValid;
module.exports.users = users;

P粉428986744
P粉428986744

全部回覆(1)
P粉184747536

根據(jù)提供的程式碼,似乎存在可能導(dǎo)致「無效登入」訊息的問題。

在authentiatedUser函數(shù)中比較使用者名稱和密碼: 在authentiatedUser 函數(shù)中,您將過濾使用者陣列以尋找符合的使用者名稱和密碼。但是,過濾功能有問題。不應(yīng)使用 users.username 和 users.password,而應(yīng)使用 user.username 和 user.password。該變數(shù)應(yīng)該是單數(shù),因?yàn)樗淼^程中 users 陣列中的每個(gè)元素。

更改此行:

return (users.username === username && users.password === password)

至:

return (user.username === username && user.password === password)
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板