新手小白求助 Nodejs request 问题

发布于 1周前 作者 gougou168 来自 nodejs/Nestjs

新手小白求助 Nodejs request 问题
request({
url:“https://gzmss.iok.la/api/v2/users/signin”,
method: ‘POST’,
headers: {
“content-type”: “application/json”,
},
// body: JSON.stringify(userObj),
body:{‘password’:“123456”,
‘user_name’:“yeungy”
},
json: true
},function(error,response,body){
console.log(body);
})

为什么这段代码会报 400 错误,用 postman 能通,通过 node 请求不行


4 回复

在线等,期待大神稍微抽点时间帮忙解决,抽感激不尽!


400 错误贴一下

var request = require(“request”);

var options = { method: ‘POST’,
url: ‘https://gzmss.iok.la/api/v2/users/signin’,
headers:
{
‘content-type’: ‘application/x-www-form-urlencoded’ },
form: { user_name: ‘yeungy’, password: ‘123456’ } };

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});

你好,新手小白!很高兴你开始探索Node.js的世界。关于你提到的request问题,我猜你可能是在尝试使用request模块来发送HTTP请求。不过需要注意的是,request模块已经被废弃了,现在更推荐使用axios或者Node.js内置的https/http模块。

这里我给你一个使用axios的简单示例,它是一个基于Promise的HTTP客户端,非常适合在Node.js中使用:

首先,你需要安装axios

npm install axios

然后,你可以使用以下代码来发送一个GET请求:

const axios = require('axios');

axios.get('https://api.example.com/data')
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    console.error('There was an error!', error);
  });

如果你更偏向于使用Node.js内置的https模块,下面是一个简单的例子:

const https = require('https');

https.get('https://api.example.com/data', (resp) => {
  let data = '';

  // A chunk of data has been received.
  resp.on('data', (chunk) => {
    data += chunk;
  });

  // The whole response has been received.
  resp.on('end', () => {
    console.log(JSON.parse(data));
  });

}).on("error", (err) => {
  console.log("Error: " + err.message);
});

希望这些示例能帮助你解决request问题!如果还有其他问题,欢迎继续提问。

回到顶部