NodeJS 18 Fetch API
11247 단어 webdevjavascriptbeginnersnode
node-fetch
와 같은 타사 npm 패키지를 더 이상 사용해야 한다는 것입니다. 이는 우리가 설치해야 하는 종속성이 하나 줄어들기 때문에 node_modules
폴더가 약간 더 가벼워야 합니다.Fetch API와 같은 최신 NodeJS 기능을 사용하려면 먼저 컴퓨터에서 최신 버전의 Node를 실행하고 있는지 확인해야 합니다. 실행 중인 버전을 확인하려면 콘솔에서 명령
node -v
을 실행하십시오. 18 미만인 경우 이러한 새 기능을 사용하려면 먼저 업그레이드해야 합니다.가져오기 API 사용
JavaScript 애플리케이션을 개발할 때 브라우저에서 Fetch API를 사용하는 데 이미 익숙하다면 이 구문을 이해하기 쉬울 것입니다. 마침내 JavaScript를 사용하여 백엔드에서 데이터를 가져오는 기본 솔루션을 갖게 되었습니다.
const getAPI = async () => {
const res = await fetch('https://pokeapi.co/api/v2/pokemon/');
if (res.ok) {
const data = await res.json();
console.log(data);
}
};
getAPI();
하나의 잠재적인 사용 사례를 볼 수 있도록 실용적인 예를 만들어 보겠습니다. 디렉터리로 이동한 다음 아래 코드를 복사하여 명령줄에 붙여넣어 프로젝트를 스캐폴딩합니다.
mkdir node-backend-fetch
cd node-backend-fetch
npm init -y
npm i express nodemon
touch app.js
mkdir controllers routes
touch controllers/pokemon.js
touch routes/pokemon.js
코드 편집기에서 프로젝트를 연 다음 아래 코드를 해당 파일에 복사합니다.
controllers/pokemon.js
exports.getPokemon = async (req, res) => {
const api = await fetch('https://pokeapi.co/api/v2/pokemon/');
if (api.ok) {
const data = await api.json();
console.log(data);
try {
res.json(data);
} catch (error) {
console.log(error);
}
}
};
exports.getPokemonMoves = async (req, res) => {
const api = await fetch('https://pokeapi.co/api/v2/move/');
if (api.ok) {
const data = await api.json();
console.log(data);
try {
res.json(data);
} catch (error) {
console.log(error);
}
}
};
routes/pokemon.js
const express = require('express');
const pokemonController = require('../controllers/pokemon');
const router = express.Router();
router.get('/pokemon', pokemonController.getPokemon);
router.get('/pokemon-moves', pokemonController.getPokemonMoves);
module.exports = router;
app.js
const express = require('express');
const pokemonRoute = require('./routes/pokemon');
const app = express();
app.use('/', pokemonRoute);
const port = process.env.PORT || 3000;
app.listen(port, () => console.log(`Server running on ${port}, http://localhost:${port}`));
package.json
이 실행 스크립트를 추가하십시오.
"scripts": {
"start": "node app.js",
"dev": "nodemon app.js"
},
노드 18을 사용하고 있는지 다시 확인한 다음 명령
npm run dev
을 실행하여 백엔드 서버를 시작하십시오.이 경로http://localhost:3000/pokemon로 이동하면 json에 반환된 포켓몬 목록이 있어야 합니다. 데이터는 콘솔에도 기록됩니다.
그리고 이 경로http://localhost:3000/pokemon-moves로 이동하면 역시 json으로 반환되는 포켓몬 이동 목록이 있어야 합니다. 다른 예와 마찬가지로 데이터도 콘솔에 기록됩니다.
마지막 생각들
이것은 NodeJS 18 Fetch API 사용에 대한 간략한 소개였습니다. 자세한 내용은 official announcement을 확인하십시오.
Reference
이 문제에 관하여(NodeJS 18 Fetch API), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/andrewbaisden/the-nodejs-18-fetch-api-72m텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)