>웹 프론트엔드 >JS 튜토리얼 >다음 프로젝트를 위한 ree API

다음 프로젝트를 위한 ree API

WBOY
WBOY원래의
2024-08-13 12:48:02930검색

ree APIs for Your Next Projects

1. 맵박스 API 예시

Mapbox는 지도, 내비게이션 서비스 및 기타 위치 기반 애플리케이션을 만드는 데 사용할 수 있는 포괄적인 도구와 정확한 위치 데이터를 제공합니다. Mapbox를 사용하면 맞춤형 지도 표시, 위치정보 통합 등 다양한 기능을 사용할 수 있습니다.
링크

import React, { useEffect } from 'react';

const Mapbox = () => {
    useEffect(() => {
        // Set your Mapbox access token here
        const mapboxAccessToken = 'YOUR_MAPBOX_ACCESS_TOKEN';

        // Create a map instance
        const map = new mapboxgl.Map({
            container: 'map', // Container ID in the HTML
            style: 'mapbox://styles/mapbox/streets-v11', // Style URL
            center: [-74.5, 40], // Starting position [lng, lat]
            zoom: 9, // Starting zoom
        });

        mapboxgl.accessToken = mapboxAccessToken;
    }, []);

    return (
        <div>
            <h2>Mapbox Example</h2>
            <div id="map" style={{ width: '100%', height: '400px' }}></div>
        </div>
    );
};

export default Mapbox;

2. NASA API 예시

NASA API는 행성, 별 등에 관한 이미지, 동영상, 정보 등 우주와 관련된 풍부한 데이터에 대한 액세스를 제공합니다. 교육 도구를 구축하거나 멋진 우주 데이터를 표시하려는 경우 NASA의 API는 훌륭한 리소스입니다.
링크

import React, { useState, useEffect } from 'react';
import axios from 'axios';

const Nasa = () => {
    const [data, setData] = useState(null);

    useEffect(() => {
        axios.get('https://api.nasa.gov/planetary/apod?api_key=DEMO_KEY')
            .then(response => setData(response.data))
            .catch(error => console.error('Error fetching data from NASA API:', error));
    }, []);

    return (
        <div>
            <h2>NASA Astronomy Picture of the Day</h2>
            {data ? (
                <div>
                    <h3>{data.title}</h3>
                    <img src={data.url} alt={data.title} style={{ maxWidth: '100%' }} />
                    <p>{data.explanation}</p>
                </div>
            ) : (
                <p>Loading...</p>
            )}
        </div>
    );
};

export default Nasa;

3. 즐겨찾는 명언 API 예시

이 API는 애플리케이션에 쉽게 통합할 수 있는 통찰력 있는 인용문 모음을 제공합니다. 사용자에게 영감을 주고 동기를 부여하는 앱을 만드는 데 적합합니다.
링크

import React, { useState, useEffect } from 'react';
import axios from 'axios';

const Quotes = () => {
    const [quote, setQuote] = useState('');

    useEffect(() => {
        axios.get('https://favqs.com/api/qotd')
            .then(response => setQuote(response.data.quote.body))
            .catch(error => console.error('Error fetching data from Quotes API:', error));
    }, []);

    return (
        <div>
            <h2>Quote of the Day</h2>
            <blockquote>{quote}</blockquote>
        </div>
    );
};

export default Quotes;

4. Edamam API 예시

Edamam은 상세한 건강 분석과 함께 식품 및 요리법에 대한 포괄적인 데이터베이스에 대한 액세스를 제공합니다. 이 API는 다이어트 추적기, 레시피 앱 및 영양 기반 애플리케이션을 만드는 데 이상적입니다.
링크

import React, { useState, useEffect } from 'react';
import axios from 'axios';

const Edamam = () => {
    const [recipes, setRecipes] = useState([]);
    const query = "chicken"; // Example search query

    useEffect(() => {
        const appId = 'YOUR_EDAMAM_APP_ID';
        const appKey = 'YOUR_EDAMAM_APP_KEY';

        axios.get(`https://api.edamam.com/search?q=${query}&app_id=${appId}&app_key=${appKey}`)
            .then(response => setRecipes(response.data.hits))
            .catch(error => console.error('Error fetching data from Edamam API:', error));
    }, []);

    return (
        <div>
            <h2>Edamam Recipes for "{query}"</h2>
            <ul>
                {recipes.map((recipe, index) => (
                    <li key={index}>
                        <img src={recipe.recipe.image} alt={recipe.recipe.label} width="50" />
                        {recipe.recipe.label}
                    </li>
                ))}
            </ul>
        </div>
    );
};

export default Edamam;

5. 가짜 스토어 API 예시

Fake Store API는 전자상거래 프로젝트를 진행하는 개발자를 위한 환상적인 도구입니다. 매장을 제품, 가격, 카테고리로 채우는 데 사용할 수 있는 유사 실제 데이터를 제공합니다.
링크

import React, { useState, useEffect } from 'react';
import axios from 'axios';

const FakeStore = () => {
    const [products, setProducts] = useState([]);

    useEffect(() => {
        axios.get('https://fakestoreapi.com/products')
            .then(response => setProducts(response.data))
            .catch(error => console.error('Error fetching data from Fake Store API:', error));
    }, []);

    return (
        <div>
            <h2>Fake Store Products</h2>
            <ul>
                {products.map(product => (
                    <li key={product.id}>
                        <img src={product.image} alt={product.title} width="50" />
                        {product.title}
                    </li>
                ))}
            </ul>
        </div>
    );
};

export default FakeStore;

6. 포켓몬 API 예시

포켓몬 API(PokeAPI)는 모든 포켓몬 팬에게 꼭 필요한 도구입니다. 통계, 유형, 능력을 포함하여 모든 포켓몬에 대한 포괄적인 데이터를 제공하므로 포켓몬 관련 앱과 게임을 구축하는 데 적합합니다.
링크

import React, { useState, useEffect } from 'react';
import axios from 'axios';

const Pokemon = () => {
    const [pokemonList, setPokemonList] = useState([]);

    useEffect(() => {
        axios.get('https://pokeapi.co/api/v2/pokemon?limit=10')
            .then(response => setPokemonList(response.data.results))
            .catch(error => console.error('Error fetching data from Pokémon API:', error));
    }, []);

    return (
        <div>
            <h2>Pokémon List</h2>
            <ul>
                {pokemonList.map((pokemon, index) => (
                    <li key={index}>
                        {pokemon.name}
                    </li>
                ))}
            </ul>
        </div>
    );
};

export default Pokemon;

7. IGDB API 예시

인터넷 게임 데이터베이스(IGDB) API는 수천 개의 비디오 게임에 대한 데이터를 제공하여 비디오 게임 중심의 웹사이트와 애플리케이션을 만들 수 있도록 해줍니다. 게임, 플랫폼, 장르 등에 대한 정보를 가져올 수 있습니다.
링크

import React, { useState, useEffect } from 'react';
import axios from 'axios';

const IGDB = () => {
    const [games, setGames] = useState([]);

    useEffect(() => {
        const apiKey = 'YOUR_IGDB_API_KEY';

        axios.post('https://api.igdb.com/v4/games/', 
        'fields name, cover.url; sort popularity desc; limit 10;', 
        { headers: { 'Client-ID': 'YOUR_CLIENT_ID', 'Authorization': `Bearer ${apiKey}` } })
            .then(response => setGames(response.data))
            .catch(error => console.error('Error fetching data from IGDB API:', error));
    }, []);

    return (
        <div>
            <h2>Popular Video Games</h2>
            <ul>
                {games.map(game => (
                    <li key={game.id}>
                        {game.cover ? <img src={game.cover.url} alt={game.name} width="50" /> : null}
                        {game.name}
                    </li>
                ))}
            </ul>
        </div>
    );
};

export default IGDB;

결론

이러한 각 예는 해당 API를 React, Next에 통합하는 방법을 보여줍니다. 더 자세한 정보 표시, 사용자 상호 작용 처리, 더 나은 UX를 위한 출력 스타일 지정 등 애플리케이션의 요구 사항에 맞게 이러한 예제를 쉽게 확장할 수 있습니다.

이 예는 다양한 무료 API에서 데이터를 가져오고 표시하는 것이 얼마나 간단한지 보여줍니다.

위 내용은 다음 프로젝트를 위한 ree API의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.