API: 5세에게 설명됨 👶🏻(당신이 생각하는 것과 다름!)
그리고 BTW, 이후에 질문이나 의심이 생기면 ask.counsily.com에 질문을 제기하십시오. 내가 거기에서 당신을 도울 것입니다!
API란 무엇입니까?
간단히 말해서, API는 약간의 복잡한 코드(Javascript DOM API)를 추상화하거나 코드베이스(예: 프런트엔드와 백엔드) 간의 링크 역할을 하는 구성일 뿐입니다. API는 또한 프로그래밍 언어를 "연결"하고 한 언어에서 다른 언어로 데이터를 수정 및 전송하는 데 정말 유용할 수 있습니다.
Mozilla has an amazing article on this
간단히 말해서 다음과 같습니다.
Application Programming Interfaces (APIs) are constructs made available in programming languages to allow developers to create complex functionality more easily. They abstract more complex code away from you, providing some easier syntax to use in its place.
API를 설명하는 놀라운 비유(또한 Mozilla에서 제공)-
실제 사례로 집, 아파트 또는 기타 거주지의 전기 공급에 대해 생각해 보십시오. 집에서 가전제품을 사용하려면 콘센트에 꽂으면 작동합니다. 전원 공급 장치에 직접 연결하려고 시도하지 마십시오. 그렇게 하는 것은 정말 비효율적이며 전기 기술자가 아닌 경우 시도하기 어렵고 위험합니다.
일반적으로 마이크로서비스를 코드베이스에 추가하는 것은 좋은 생각입니다. API는 또한 클라우드 기능과 비슷합니다.
API 유형
API 유형 알아야 할 몇 가지 다른 유형의 API가 있습니다. Java와 같은 프로그램 중심 API(객체가 서로 대화할 수 있도록 함)와 다음과 같은 웹 중심 API가 있습니다. REST API(Representational State Transfer) GraphQL API(더 많은 것이 있지만 여기서는 문맥에서 벗어남)
나만의 API 만들기⚡⚡
API를 만드는 인기 있는 프로그래밍 언어는 Javascript, Python, Go, Rust입니다(더 많이 있지만 가장 많이 사용되는 언어입니다).
Python으로 API를 만들어 봅시다. FastAPI를 사용하면 정말 쉽습니다!
Python에서 API를 만드는 여러 옵션이 있습니다(예: Flask, Quart, Fastapi). Fastapi는 빠르고 API를 염두에 두고 만들어졌기 때문에 선택했습니다.
좋아, 지금
먼저 요구 사항을 설치하십시오.
Python과 javascript에서 API를 만드는 것은 데코레이터가 있는 함수일 뿐이므로 정말 쉽습니다.
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def hello():
return {"Hello": "World"}
그게 바로 그것입니다!
먼저
fastapi
를 가져온 다음 앱을 선언했습니다. 여러 구성을 앱에 전달할 수 있으며 fastapi는 자동으로 Swagger ui Docs 및 Redoc 페이지를 생성합니다. (아래 그림은 swagger 문서이며 /docs
끝점에서 사용 가능)다음과 같은 인수를 가질 수 있습니다.
@app.get("/items")
def read_item(q: Optional[str] = None):
return {"q": q}
그러면 URL에서 q에 대한 빵이 반환됩니다http://127.0.0.1:8000/items?q=bread.
다음과 같이 동적 끝점을 가질 수도 있습니다.
@app.get("/user/{user_name}")
def read_item(user_name:str):
return {"username": user_name}
이제 URLhttp://127.0.0.1:8000/user/dhravya로 이동하면 "username: dhravya"가 반환됩니다.
그러나 서버를 실행하는 방법은 무엇입니까?
이 명령을 사용하십시오.
uvicorn main:app --reload
그리고 그것은 보여야합니다
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
INFO: Started reloader process [28720]
INFO: Started server process [28722]
INFO: Waiting for application startup.
INFO: Application startup complete.
그게 다야! API는 쉽습니다. 이제 React 프론트엔드를 Python 백엔드에 연결할 수 있습니다!
그리고 배포하려면 Apache에서 이 명령과 리버스 프록시를 사용합니다.
pkill gunicorn && gunicorn app:app -w 1 -k uvicorn.workers.UvicornWorker -b "127.0.0.1:8000" --daemon
여기서 끝이 아닙니다! https://fastapi.tiangolo.com FastAPI 문서로 이동하여 둘러보세요! 또는 나만의 API 만들기
웹은 API로 가득 차 있습니다. 그것들을 활용하면 시간을 절약할 수 있습니다! 따라서 https://rapidapi.com으로 이동하여 찾아보십시오.
이제 당신은 알고
Express.JS 또는 Rust에 대한 동일한 튜토리얼을 만들고 싶다면 아래에 댓글을 달아주세요.
이 블로그가 마음에 들었거나 어떤 식으로든 도움이 되었다면 이 블로그를 💖하고 . 유익한 튜토리얼, 블로그, 흥미로운 도구 및 제품에 대한 글을 매주 작성하려고 노력합니다!
트위터에서 저와 연결하세요 -
프로그래밍 질문이 있는 경우 Download Counsily .
Reference
이 문제에 관하여(API: 5세에게 설명됨 👶🏻(당신이 생각하는 것과 다름!)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/dhravya/apis-explained-to-a-5-year-old-not-what-you-think-348l텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)