gpt4 book ai didi

javascript - 在 Mongo 中获取数据而不是 URI 的替代方法

转载 作者:行者123 更新时间:2023-12-02 21:58:32 25 4
gpt4 key购买 nike

使用 Express 和 Node 作为我的中间件,我使用 app.get('/:email/:password') ,它会像这样找到用户:users.find({ email.req.params.email,密码:req.params.password}).toArray());

在前端我只有一个 fetch('http://localhost:3000/api/user' + '/' + email + '/' + password)

虽然这有效。有更好的方法吗?我不确定将电子邮件和密码传递到 URI 是否是最好的做法。

最佳答案

👨‍🏫 您可以使用 Post 方法来完成。例如,您可以查看下面的代码👇:

前端:


async handlePost() {
try {
// change the endpoint with yours
const userobject = { email, password };
// you can change wit your endpoint
const endpoint = 'http://localhost:3000/api/v1/users';
const result = await fetch( endpoint, { method: 'POST',data: JSON.stringfy(userobject) })
const json = await result.json();
console.log(json);
// do some stuff here: set state or some stuff you want
} catch(ex) {
console.log(ex);
}
}

💡上面的代码👆只是一个例子。您的 userobject 可以来自您的状态,或者您将其传递给您的函数 handlePost

后端:


const express = require('express');

const app = express();

// enable req.body
app.use(express.json());
app.use(express.urlencoded({ extended: true }));

app.post('/api/v1/users', async (req, res) => {
const { email, password } = req.body;
try {
const result = await users.find({email, password}).toArray();
res.status(200).send(result);
} catch(ex) {
res.status(500).send(ex.message);
}
});

app.listen(3000, () => {
console.log('Server is up');
})

💡上面的代码只是👆一个示例后端,您可以使用它来处理前端发布请求。

希望对你有帮助。

关于javascript - 在 Mongo 中获取数据而不是 URI 的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59940889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com