http://localhost:3060/hashtag/이미지
같이 url query에 한글이 들어가는 경우 서버에서 다음과 같은 에러가 발생할 수 있다.
TypeError [ERR_UNESCAPED_CHARACTERS]: Request path contains unescaped characters
이를 방지하기 위해서는
Use encodeURIComponent() to encode uri
and decodeURIComponent() to decode uri
를 사용해주어야 한다.
function loadHashtagPostsAPI(actionData) {
return Axios.get(`/hashtag/${encodeURIComponent(actionData)}`);
}
router.get('/:tag', async (req, res, next) => {
// POST /api/posts/hashtag/:tag
try {
const hashtagPosts = await db.Post.findAll({
include: [{
model: db.Hashtag,
where: { name: decodeURIComponent(req.params.tag) },
}]
});
return res.status(200).json(hashtagPosts);
} catch (e) {
console.error(e);
next(e);
}
});
module.exports = router;