javascript - Axios 不发送正文
问题描述
Axios 没有将正文发送到我的 API。
router.get('/login', async function(req,res) {
try {
const email = req.body.email;
const pass = req.body.pass;
const users = await pool.query("select username from users where username=$1 and password=$2", [email, pass]);
if(users.rows[0])
res.json(users.rows[0]['username']!=null);
else
res.json(users)
console.log(req.body)
console.log(email,pass)
} catch (err) {
console.log(err.message);
}
});
当我在运行 GetData 后控制台记录 req.body 时
async function GetData() {
const email = document.getElementById("email").value;
const pass = document.getElementById("pass").value;
const response = await axios.get("http://localhost:3002/login",
{
body: JSON.stringify({"email": email, "pass" : pass})
})
console.log(response.config.body);
console.log(response.data.rows)
}
身体被称为 {} 一个空对象。
我如何通过 axios 发送身体,就像失眠症发送身体一样。
解决方案
GET 不接受发送正文,请改用 POST:
router.post('/login', async function(req,res) {
// …
const response = await axios.post("http://localhost:3002/login", { email, pass })
另外,response.config.body 不是一个东西,如果你查看请求配置文档,有属性“data”,而不是“body”。
console.log(response.config.data);
希望这会有所帮助!
推荐阅读
- discord - 将一部分从一个嵌入复制到另一个 discord.js
- sql - Oracle PLSQL 程序制作递增模式
- spring-boot - 基本身份验证在邮递员中返回 403,但在浏览器中工作正常
- c++ - 有没有办法在 C++ 中实现非成员 [] 运算符?
- apache-spark - 如何在桶列上使用分区动态覆盖?
- html - 空间不足时如何创建滚动功能
- python - 格式化大型列表理解的最佳实践?
- python - Selenium Python - 无法通过 Xpath 选择
- c# - 如何使用 CefSharp 在 winforms 中授权代理(登录名:密码:ip:端口:连接类型)?
- c# - NET5 JWT 不记名身份验证不识别 SSL 证书