API는 애플리케이션 소프트웨어를 구축하고 통합하기 위한 정의 및 프로토콜 세트로, 애플리케이션 프로그래밍 인터페이스(Application Programming Interface)를 나타냅니다.
API를 사용하면 구현 방식을 알지 못해도 제품 또는 서비스가 서로 커뮤니케이션할 수 있으며 애플리케이션 개발을 간소화하여 시간과 비용을 절약할 수 있습니다. 새로운 툴과 제품을 설계하거나 기존 툴과 제품을 관리하는 경우 API는 유연성을 제공하고 설계, 관리, 사용 방법을 간소화하며 혁신의 기회를 제공합니다.
function request(){
$.ajax({
type: "GET", // 데이터통신요청타입
url: "/api/profile", // 데이터가 이동되는 경로 기준 url과 동일하다
data: {
// 프론트에서 백엔드 보내고 싶은 데이터
backData:frontData
},
success: function (response) {
// 데이터 통신이 성공 했을때 반환되는 데이터가 함수
console.log(response['result'])
}
});
}
# GET 클라이언트 요청
@app.route("/api/profile", methods=['GET'])
def comment_list():
# request.args.get는 request라이브러리로 프론트에서 보내는 데이터를 받는다.
backDataSave = request.args.get('backData')
# 받은 데이터로 DB에 테이블 중에서 'bataTitle'이 동일한 데이터를 find (찾는다)
# list()란 받아온 데이터를 list타입에 데이터로 묶어주는 메소드
result = list(db.tableOne.find({'bataTitle': backDataSave}))
# json 형태로 프론트에 반환한다. result라는 이름으로 result를 반환한다.
return jsonify({"result": result})
API 통신을 처음 하면서 서버랑 클라이언트가 어떻게 상호 통신을 하는지 확인 할수 있었다. 퍼블리셔로 작업만 하던 내가 처음 api로 서버를 통신 했을때 상당히 시야가 넓어지는 기분이였다.
출처 :https://www.redhat.com/ko/topics/api/what-are-application-programming-interfaces 레드햇
'개발일기' 카테고리의 다른 글
리엑트 스크립트 버전과 esLint 충돌 (0) | 2021.12.24 |
---|---|
JWT (0) | 2021.11.07 |
DOCKER - 왕초보 튜토리얼 (0) | 2021.10.07 |