[Nextjs] ์ํ์ง ์๋ ๊ฐ์ฒด ์ ์ธํ๊ณ ๋ฐฐ์ด json return ํ๊ธฐ
ํด๊ฒฐ๋ฐฉ๋ฒ
๊ฐ์ฒด๋ถํด ๋ฌธ๋ฒ์ ํตํ์ฌ return ํ๋ค
export async function GET(request: NextRequest) {
const result = await prismadb.user.findMany();
// Modify the result to exclude the 'hashedPassword' field
const modifiedResult = result.map(({ hashedPassword, ...rest }) => rest);
return NextResponse.json(modifiedResult);
}
const modifiedResult = result.map(({ hashedPassword, ...rest }) => rest);์์ ๊ฐ์ฒด ๋ถํด๊ฐ ์ผ์ด๋ฉ๋๋ค. ๊ตฌ์ฒด์ ์ผ๋ก๋ ({ hashedPassword, ...rest }) => rest ๋ถ๋ถ์ด ๊ฐ์ฒด ๋ถํด๋ฅผ ์ํํฉ๋๋ค.
์ฌ๊ธฐ์ ์ฌ์ฉ๋ { hashedPassword, ...rest }๋ ๊ฐ์ฒด ๋ถํด ๋ฌธ๋ฒ์ ๋๋ค. ์ด๊ฒ์ result ๋ฐฐ์ด์ ๊ฐ ์์๊ฐ ๊ฐ์ง ๊ฐ์ฒด์์ hashedPassword ํ๋๋ฅผ ์ถ์ถํ๊ณ ๋๋จธ์ง ํ๋๋ rest๋ผ๋ ์๋ก์ด ๊ฐ์ฒด์ ๋ด๋ ์ญํ ์ ํฉ๋๋ค.
์์ธํ ์ค๋ช ํ๋ฉด:
- hashedPassword: ๊ธฐ์กด ๊ฐ์ฒด์์ hashedPassword ํ๋๋ฅผ ์ถ์ถํ์ฌ ํด๋น ๋ณ์์ ํ ๋นํฉ๋๋ค.
- ...rest: ๋๋จธ์ง ํ๋๋ ์๋ก์ด ๊ฐ์ฒด์ธ rest์ ๋ด์ต๋๋ค. ...๋ ๋๋จธ์ง ํ๋๋ฅผ ์๋ฏธํ๋ JavaScript์ ํ์ฅ ๋ฌธ๋ฒ ์ค ํ๋๋ก, ๋๋จธ์ง ํ๋๋ค์ ํ๊บผ๋ฒ์ ์๋ก์ด ๊ฐ์ฒด์ ๋ด์ ์ ์์ต๋๋ค.
์ด๋ ๊ฒ ํ๋ฉด modifiedResult ๋ฐฐ์ด์ result ๋ฐฐ์ด์ ๊ฐ ์์์์ hashedPassword ํ๋๋ฅผ ์ ์ธํ ๋๋จธ์ง ํ๋๋ก ์ด๋ฃจ์ด์ง ์๋ก์ด ๊ฐ์ฒด๋ค์ ๊ฐ์ง๊ฒ ๋ฉ๋๋ค.
Return Before
๋ถํ์ํ ๋ฐ์ดํฐ hashedPassword๋ก return ๋จ
[{"id":"clq4odk060000vrdgwcwuex13","hashedPassword":"$2js9dv90j90S%Sijdfoj!sdf"}]
Return After
hashedPassword๊ฐ ์์ด์ง
[{"id":"clq4odk060000vrdgwcwuex13"]