我在前端使用React,在带有PSQL数据库的服务器上使用Express。我有一个提取数据的组件,所以我可以显示它-
router.get("/conversation", (request, response) => {
db.query(
`
SELECT *
FROM conversations;
`,)
.then(({ rows: messages }) => {
return response.json(messages);
});
});
这是我的React代码-
const [conversations, setConversations] = useState([]);
const [messages, setMessages] = useState([]);
useEffect(() => {
axios.get("/messages/conversation")
.then(
(response) => {
setConversations(response.data);
}
);
}, [messages]);
我要在axios get请求中发送的道具中有一些数据,因此我可以用它来过滤SQL查询。我希望我的查询是这样的-
SELECT *
FROM conversations
WHERE receiver_id = props.receiver_id;
props.receiver_id是我要发送的数据
有没有办法做到这一点?
答案 0 :(得分:1)
您可以使用URL参数,例如axios.get("/messages/conversation?receiver_id=5")
,然后服务器端点可以通过request.query.receiver_id
来获取它。