请求承诺 - 错误 post 向服务器请求端口

request-pormise - bad post request to server with port

我尝试使用 promise-request 并编写代码:

var pr = require('promise-request');

var options = {
  method: 'POST',
  uri: 'http://localhost:4000/user/login',
  port: 4000,
  form: {
    login: 'login',
    password: 'password'
  },
  json: true
};
pr(options)
  .then(function(res) {
    console.log(res);
  })
  .catch(function(err) {
    console.log(err);
  });

如果不使用端口选项我得到错误:

Error: connect ECONNREFUSED 127.0.0.1:80

如果我添加 port 选项错误消失但在官方文档中没有写你可以设置这个选项。奇怪的是,它起作用了,因为我在 uri 中设置了端口。我有无法从服务器获取数据的错误。我只有错误:

undefined:1
<!DOCTYPE html>
^

SyntaxError: Unexpected token < in JSON at position 0

我用 http 模块做了同样的请求,一切正常,也许我需要使用另一个模块?

使用axios or request代替promise-request

代码将如下所示:

1.

axios.post('/user/login', {
  login: 'login',
  password: 'password'
})
.then(function(response) {
  console.log(response);
})
.catch(function(error) {
  console.log(error);
});

2.

request.post({
  url: '/user/login',
  form: {
    login: 'login',
    password: 'password'
  }
}, function(err, httpResponse, body) {

})