오늘 항해99 첫날이어서 팀원들과 만나 프로젝트를 기획하였다.
주제를 정하고 와이어프레임 만들고 구현해야 할 기능 즉, api명세 작성까지였는데
api 명세서 작성 너무 어려웠다
어떤식으로인지 작동하는 방향은 알겠는데 느낌만 둥둥 떠다녀서
url이나 구체적인게 감이 안 잡혔다.
api 명세는 내가 구글 스프레드시트를 사용하자고 추천했는데 이걸로 시작하길 잘한 거 같아 혼자 뿌듯했다.
공유나 동시 수정이 가능해서 팀원들과 같이 하기 정말 편했다.
https://docs.google.com/spreadsheets/d/1CxoXotXG1HhEuPgLq7G_G-7I6kq2YHcEx9KFghHExrM/edit#gid=0
기능 API
시트1 Method,URL,request,response,비고 회원가입,POST,/users,{'users':sign-up} // {'id':id,'pw':pw,'name':name},{'msg':'회원 가입 완료!'},/login으로 이동,회원 등록 폼 /members/new -> GET 로그인,GET,/users,{'users':sign-in} // {'id'
docs.google.com
-----------
* method
먼저 method가 GET일까 POST일까를 고민했는데 method는 두 개가 다가 아니었다.
데이터 전송의 방식에는 GET, POST, PUT, PATCH, DELETE 등이 있다. (HTTP Method와 같다고 한다)
- POST : 생성 (POST를 통해 해당 URI를 요청하면 리소스를 생성한다)
- GET : 조회 (GET를 통해 해당 리소스를 조회한다. 리소스를 조회하고 해당 도큐먼트에 대한 자세한 정보를 가져온다)
- PUT : 수정 (덮어쓰기:PUT를 통해 해당 리소스를 모든 속성을 수정한다)
- PATCH : 수정 (부분 수정만 담당하며 리소스의 일부분만 수정할 때 사용)
- DELETE : 삭제 (DELETE를 통해 리소스를 삭제한다)
근데 method를 검색하면서 REST API가 자꾸 나온다.
API와 무슨 차이가 있는 건가 싶어 검색
API는 서버와 클라이언트가 요청과 응답을 사용하여 서로 통신하는 방법인데
어떻게 통신을 할 거냐에 따라 방식이 달라진다. 여기서 REST API는 네 가지 방식 중 하나이다.
- SOAP API
이 API는 단순 객체 접근 프로토콜을 사용합니다. 클라이언트와 서버는 XML을 사용하여 메시지를 교환합니다. 과거에 더 많이 사용되었으며 유연성이 떨어지는 API입니다.
- RPC API
이 API를 원격 프로시저 호출이라고 합니다. 클라이언트가 서버에서 함수나 프로시저를 완료하면 서버가 출력을 클라이언트로 다시 전송합니다.
- Websocket API
Websocket API는 JSON 객체를 사용하여 데이터를 전달하는 또 다른 최신 웹 API 개발입니다. WebSocket API는 클라이언트 앱과 서버 간의 양방향 통신을 지원합니다. 서버가 연결된 클라이언트에 콜백 메시지를 전송할 수 있어 REST API보다 효율적입니다.
- REST API
오늘날 웹에서 볼 수 있는 가장 많이 사용되고 유연한 API입니다. 클라이언트가 서버에 요청을 데이터로 전송합니다. 서버가 이 클라이언트 입력을 사용하여 내부 함수를 시작하고 출력 데이터를 다시 클라이언트에 반환합니다.
https://meetup.toast.com/posts/92
REST API 제대로 알고 사용하기 : NHN Cloud Meetup
REST API 제대로 알고 사용하기
meetup.toast.com
한 줄 정리하자면
REST API에서 자원에 대한 행위를 표현할 때 HTTP Method를 사용하고,
method는 HTTP Method를 말하고 GET, POST, PUT, PATCH, DELETE 등이 있다.
* URL ? URI ?
URI는 Uniform Resource Identifier
URL은 Uniform Resource Locator
URN은 Uniform Resource Name
의 약자이다.
자원의 식별자(URI), 위치(URL), 이름(URN)으로 유추해 볼 수 있다.
가장 큰 게 URI이니까 헷갈린다 싶을 때는 URI를 써야겠다.
* 참고사이트
https://aws.amazon.com/ko/what-is/api/
API란 무엇인가요? - API 초보자를 위한 가이드 - AWS
aws.amazon.com
RESTful한 세계에서의 POST와 PUT의 차이, 거기에 PATCH까지
HttpResponseHTTP/1.1 200 OK{ “id”: 1, “name”: “뽀로로”, “grade”: 1}HttpResponseHTTP/1.1 200 OK{ “id”: 1 “name”: “뽀로로”, “grade”: 2}HTTP/1.1 200 OK{ “id”
velog.io
'TIL & WIL' 카테고리의 다른 글
[ React ] DOM과 ref (0) | 2022.08.12 |
---|---|
TIL : 숫자를 배열로 만드는 법 (0) | 2022.08.10 |
WIL - 8월 첫째주 (0) | 2022.08.07 |
TIL - JWT(Json Web Token) /openAPI (0) | 2022.08.04 |
TIL - Flask web framework (0) | 2022.08.02 |