Axios POST 请求将数据发送到 Express 服务器但出现 404 错误
您好,世界,我正在尝试为我正在处理的项目构建用户身份验证服务器,但在尝试向我的 Node.js Express 服务器发送 POST 请求时遇到了问题。
我想使用 Axios 发送一个包含来自浏览器的用户名和密码的 POST 请求。但是一旦发送请求,它就会给我一个 404 Not Found 错误。请求必须转到 for u, v in zip(list1, list2):
if u>v:
....
并且我的 Node.js 代码应该返回“已认证”或“无效”。我在 Postman 中测试了 API,这似乎有效。我还从 Postman 导出了请求代码,并使用 fetch API、xhr 和 Axios 对其进行了测试,均返回相同的结果。
服务器接收数据并正确处理它,但是当我查看 Chromium 调试器时,请求 URL 似乎只是 http://website/api/login
而不是 http://website/
。老实说,我迷路了,我已经尝试了一切感觉,但我似乎无法让它发挥作用。任何为我指明正确方向的帮助都会很棒!谢谢!
我用于 POST 请求的代码是:
http://website/api/login
这是我在 Chromium 调试器中看到的: Headers
这是我的 Node.js / Express 代码:
const username = document.getElementById("username").value;
const password = document.getElementById("password").value;
const data = JSON.stringify({"username": username, "password":password});
const config = {
method: 'post',
url: 'http://website/api/login',
headers: {
'Content-Type': 'application/json'
},
data : data
};
axios(config).then(function (response) {
console.log(JSON.stringify(response.data));
}).catch(function (err) {
console.log(err);
})
}
感谢您为我提供的任何帮助。
答案 0 :(得分:0)
我很笨,
发生的事情的细目:
除了我把输入数据和提交按钮放在一个表单中,这将刷新页面之外,一切正常......
我通过将表单更改为 div 来修复它。
答案 1 :(得分:-1)
嘿,检查您的 chrome 控制台图片看起来您的帖子请求正在访问根 api 地址“http://website/”而不是完整路径“http://website/api/login