我无法发送邮寄请求以测试邮递员中的登录功能

时间:2019-11-09 11:54:02

标签: node.js post postman

今天,我已经开始开发我的第一个Web应用程序。我决定使用Node JS和MySQL(以及Vue JS)。我正在尝试创建用于登录/注册的脚本。寄存器工作良好。我在邮递员中测试了该请求,并且一切正常。问题来自登录。我与邮递员发送的请求花费的时间太长,我不知道为什么。

那是我的server.js文件:

var express = require('express')
var cors = require('cors')
var bodyParser = require('body-parser')
var app = express()
var port = process.env.PORT || 5000

app.use(bodyParser.json())
app.use(cors())
app.use(
  bodyParser.urlencoded({
    extended: false
  })
)

var Users = require('./routes/Users')

app.use('/users', Users)

app.listen(port, () => {
  console.log('Server is running on port: ' + port)
})

登录路径:

users.post('/login', (req, res) => {
  User.findOne({
    where: {
      email: req.body.email
    }
  })
    .then(user => {
      if (user) {
        if (bcrypt.compareSync(req.body.password, user.password)) {
          let token = jwt.sign(user.dataValues, process.env.SECRET_KEY, {
            expiresIn: 1440
          })
          res.send(token)
        }
      } else {
        res.status(400).json({ error: 'User does not exist' })
      }
    })
    .catch(err => {
      res.status(400).json({ error: err })
    })
})

我希望请求发送正确的响应。 执行的mysql似乎还可以:

Executing (default): SELECT `id`, `first_name`, `last_name`, `email`, `password`, `created` FROM `users` AS `user` WHERE `user`.`email` = 'test@test.com' LIMIT 1;

但是我不知道为什么要花这么长时间。而且在1-2分钟后,我收到了这个消息:

Could not get any response
There was an error connecting to http://localhost:5000/users/login.

0 个答案:

没有答案