サーバフォルダ構造
フォルダの分割中にエラーが発生し、404エラーが発生しました.そこで,より明確に整理するために,
tree
をインストールしてサーバのフォルダやファイル構造をチェックし,整理する.tree
//tree 설치
sudo apt-get install tree
//구조화할 폴더로 이동해서 3 depth까지(-L)
//node_modules와 test 폴더를 제외하고(-I) 구조화해 표현한다.
tree -L 3 -I "node_modules|test"
クライアントaxiosリクエスト
useEffect(() => {
const fetchPosts = async () => {
setLoading(true);
const res = await axios.get(
`http://localhost:8080/mails/posts?page=${currentPage}&limit=${postsPerPage}`
);
setPosts(res.data);
setLoading(false);
console.log(res.data);
};
fetchPosts();
}, []);
server: ./index.js
const express = require("express");
const app = express();
const cors = require("cors");
const postsRouter = require("./router/postsRouter");
app.use(express.json({ strict: false }));
app.use(
cors({
origin: "http://localhost:3001",
credentials: true,
methods: ["GET", "HEAD", "PUT", "PATCH", "POST", "DELETE", "OPTIONS"],
})
);
app.use("/mails", postsRouter);
const PORT = 8080;
let server = app.listen(PORT, () =>
console.log(`🚀 Server is starting on ${PORT}`)
);
module.exports = server;
server: router/postsRouter.js
const express = require("express");
const router = express.Router();
const { posts } = require("../controllers/mails");
router.get("/posts", posts);
module.exports = router;
server: controllers/mails/posts.js
module.exports = async (req, res) => {
const page = req.query.page;
const limit = req.query.limit;
const startIndex = (page - 1) * limit;
const endIndex = page * limit;
const resultPosts = postData.slice(startIndex, endIndex);
res.json(resultPosts);
};
reference
Reference
この問題について(サーバフォルダ構造), 我々は、より多くの情報をここで見つけました https://velog.io/@kaitlin_k/server-폴더-구조テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol