필요한 서비스
- db에서 random 으로 item 1개 선택
- 관련 정보 응답
서비스 설계
- getRandomItem:
서비스 구현
- id list 받아옴
- Math.floor 사용해서 list 중 하나 선
- 해당 id 객체 받아옴
async function getRandomItem(req, res) {
try {
const itemIds = await Item.findAll({
attributes: ['id']
});
if (itemIds.length === 0) {
res.status(404).send('No items');
} else {
const randomIndex = Math.floor(Math.random() * itemIds.length);
const randomItemId = itemIds[randomIndex].id;
const randomItem = await Item.findByPk(randomItemId);
res.status(200).json(randomItem);
}
} catch (error) {
console.error('Error fetching random item:', error);
res.status(500).send('Error fetching random item');
}
}
'개발 관련 기타 > 웹' 카테고리의 다른 글
nodejs) puppeteer 사용해서 특정 사이트에서 file download - 개발 기록 2 (0) | 2024.05.29 |
---|---|
데이터 만들기 (0) | 2024.05.26 |
[mui][nextjs][prisma] 게시판 만들기 - part 2 (reactjs를 nextjs로 포팅) (0) | 2023.11.01 |
[mui][prisma][express][mysql] 게시판 만들기 - part 1 (1) | 2023.10.31 |
react, figma 사용해서 webview 앱 용 icon.png 생성 (0) | 2023.10.18 |