개발자라면 JSON(JavaScript Object Notation)에 대해 들어보셨을 것입니다. 어디에나 있어요! API에서 구성 파일에 이르기까지 JSON은 데이터 교환을 위한 기본 형식입니다. 하지만 Node.js에서는 어떻게 작업하나요? 도움이 될 몇 가지 실제 사례를 통해 간단한 용어로 분석해 보겠습니다.
간단히 말하면 JSON은 데이터를 저장하고 교환하는 형식입니다. 읽고 쓰기가 쉽기 때문에 웹 개발에 매우 인기가 높습니다. 다음과 같습니다:
{ "name": "Alice", "age": 25, "city": "Wonderland" }
기본적으로 JavaScript 객체와 같은 키-값 쌍의 모음입니다. 하지만 기억하세요: JSON은 단지 텍스트일 뿐입니다. 코드에서 유용하게 사용하려면 객체로 변환되어야 합니다.
JSON 문자열을 가져와서 작업할 수 있는 JavaScript 개체로 변환하는 것부터 시작하겠습니다. JSON.parse()를 사용하여 이 작업을 수행합니다.
예: JSON 구문 분석
const jsonString = '{"name": "Alice", "age": 25, "city": "Wonderland"}'; const jsonObject = JSON.parse(jsonString); console.log(jsonObject.name); // Output: Alice
JSON 문자열을 가져와서 구문 분석한 후 JavaScript 개체로 변환합니다. 이제 이름, 나이, 도시 등의 속성에 액세스할 수 있습니다.
데이터를 JSON으로 보내야 한다면 어떻게 해야 합니까? 이것이 JSON.stringify()가 필요한 곳입니다. JavaScript 개체를 가져와 JSON 문자열로 변환합니다.
예: 객체를 JSON으로 변환
const user = { name: "Alice", age: 25, city: "Wonderland" }; const jsonString = JSON.stringify(user); console.log(jsonString); // Output: {"name":"Alice","age":25,"city":"Wonderland"}
API를 구축하거나 데이터를 JSON으로 저장할 때 매우 유용합니다.
JSON 파일로 작업해야 합니까? Node.js에서는 fs(파일 시스템) 모듈을 사용하면 이를 쉽게 수행할 수 있습니다. 큰 번거로움 없이 JSON 파일을 읽고 쓸 수 있습니다.
예: JSON 파일 읽기
const fs = require('fs'); fs.readFile('data.json', 'utf8', (err, data) => { if (err) { console.error(err); return; } const jsonData = JSON.parse(data); console.log(jsonData); });
여기에서는 fs.readFile()을 사용하여 JSON 파일을 읽은 다음 파일 내용을 JavaScript 개체로 구문 분석합니다. 이제 데이터로 원하는 것은 무엇이든 할 수 있습니다!
예: JSON 파일에 쓰기
const fs = require('fs'); const user = { name: "Alice", age: 25, city: "Wonderland" }; fs.writeFile('output.json', JSON.stringify(user, null, 2), (err) => { if (err) { console.error(err); return; } console.log('Data saved to output.json'); });
이 경우 JSON.stringify()는 객체를 멋진 형식의 JSON 문자열로 변환하고 fs.writeFile()은 이를 파일에 저장합니다. 쉬운!
API를 구축할 때 JSON은 데이터를 보내고 받기 위해 선택하는 형식입니다. Express.js에서는 JSON 데이터를 손쉽게 보내고 받을 수 있습니다.
예: 응답으로 JSON 보내기
const express = require('express'); const app = express(); app.get('/user', (req, res) => { const user = { name: "Alice", age: 25, city: "Wonderland" }; res.json(user); }); app.listen(3000, () => console.log('Server running on port 3000'));
여기에서는 HTTP GET 요청에 대한 응답으로 JSON 개체를 보냅니다. res.json()을 호출하는 것만큼 간단합니다!
예: 요청으로 JSON 수신
app.use(express.json()); // Middleware to parse JSON body app.post('/user', (req, res) => { const user = req.body; console.log(user); // Output: { name: "Alice", age: 25, city: "Wonderland" } res.send('User received!'); });
이 예에서는 express.json() 미들웨어를 사용하여 요청 본문에서 들어오는 JSON 데이터를 자동으로 구문 분석하여 사용할 수 있는 JavaScript 객체로 변환합니다.
잘못된 JSON 데이터를 받으면 어떻게 되나요? 걱정하지 마세요. Node.js에는 오류 처리 기능이 내장되어 있습니다. 이러한 오류를 잡는 방법을 살펴보겠습니다.
예: 구문 분석 오류 처리
const faultyJson = '{"name": "Alice", "age": 25'; // Oops, missing closing bracket try { const jsonObj = JSON.parse(faultyJson); } catch (error) { console.error('Failed to parse JSON:', error.message); }
JSON이 손상되면 JSON.parse()에서 오류가 발생합니다. 이 경우 try-catch 블록은 이를 우아하게 처리하는 데 도움이 됩니다.
JSON은 Node.js에서 데이터로 작업하는 경우 꼭 알아야 할 것입니다. JSON 데이터를 구문 분석, 생성, 읽기 또는 전송하는 경우 Node.js에 내장된 메서드를 사용하면 작업이 간단해집니다. 문자열을 객체로 변환하려면 JSON.parse()를 사용하고, 반대 방향으로 이동하려면 JSON.stringify()를 사용하고, API에서 원활한 JSON 처리를 위해 Express.js를 사용하세요.
JSON을 사용하여 편안하게 작업하면 개발자 툴킷에서 가장 유용한 도구 중 하나를 갖게 됩니다!
읽어주셔서 감사합니다. 즐거운 코딩 되세요! ?
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3