1

我尝试使用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

如果我添加端口选项错误消失但在官方文档中不要写你可以设置这个选项。它的工作原理很奇怪,因为我在uri中设置了端口。我有错误,我无法从服务器获取数据。我得到了唯一的错误:

undefined:1
<!DOCTYPE html>
^

SyntaxError: Unexpected token < in JSON at position 0

我对http模块做了同样的请求,一切都很好,也许我需要使用另一个模块?

4

1 回答 1

0

使用axiosrequest代替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) {

})
于 2017-05-08T09:07:55.983 回答