개발자

API 서버에 데이터 요청 처리 질문입니다!

2024년 05월 28일조회 67

안녕하세요. API 서버를 별도로 구축하고, 인증은 토큰방식으로 체택했습니다! 이제 웹페이지를 제작하고있는데요, 문득 드는 의문이 API서버에 대한 데이터 요청은 클라이언트 사이드단에서 처리를 해야 맞는건가요? 아니면, 서버 사이드단에서 처리를 해야 맞는건가요? 인가에 대한 토큰은 쿠키에 있다고 한다면, 1. 클라이언트 사이드단 처리 클라이언트에서 브라우저의 쿠키 접근 -> 인가 토큰 획득 -> 헤더에 포함하여, API서버에 요청. -> 데이터 요청 완료. 2. 서버사이드 처리 클라이언트에서 브라우저의 쿠키를 헤더에 포함하여 서버사이드로 데이터 요청 -> 서버사이드에서 인가토큰을 획득하여, API서버에 요청 -> 클라이언트에게 해당 데이터를 응답 -> 데이터 요청 완료. 1번 방법은 API서버가 외부에 노출되어있어서 보안에 취약하지만, 트래픽이 많아질경우, API서버에 대한 처리만 잘 하면 될것같고, 2번 방법은 API서버는 웹서버와만 통신을 하니, 보안에 강하지만, 트래픽이 많아질경우, 웹서버에 대한 처리, API 서버에 대한 처리 둘다 고민해야할것같은데.. 보통 어느방법을 선택하나요??

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.

답변 1

짹님의 프로필 사진

제 경험에서는 API서버와 웹서버가 따로 분리되진 않았어서, 하나의 서버에서 다 처리했습니다. micro-architecture인 경우라면, 2번이 일반적이긴 합니다.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2024년 05월 28일

그 질문에 대한 답은 그것이 어떤 종류의 API와 데이터, 그리고 어떤 유형의 클라이언트를 사용하느냐에 달려 있습니다. 여러 가지 방식이 있고 각각의 방식이 장단점을 가지고 있기 때문에 상황에 따라 적합한 선택을 해야합니다. 1. 클라이언트 사이드 처리: 이 접근법은 웹 브라우저 같은 클라이언트가 직접 API를 호출하는 것입니다. 이 경우, 클라이언트는 쿠키에서 토큰을 읽어서 API 요청의 헤더에 포함시킵니다. 이 방식의 장점은 서버 부하를 줄일 수 있다는 것입니다. 하지만 클라이언트 쪽에서 보안 문제가 발생할 수 있습니다. 2. 서버사이드 처리: 이 방법은 중간 서버가 API 호출을 대신해서 합니다. 사용자의 요청을 받아서 필요한 인증 정보를 추가하고, 해당 요청을 API 서버로 전송합니다. 그런 다음 API 서버의 응답을 받아 클라이언트로 반환합니다. 이 방식은 보안성과 확장성 면에서 더 우수하지만, 추가적인 서버 리소스가 필요하며 복잡성이 증가합니다. 보통은 보안 요건, 서버 리소스, 복잡성 등을 고려하여 선택해야 합니다. 만약 인증 정보를 클라이언트에 노출하는 것이 우려된다면 서버 사이드 처리 방식이 더 낫습니다. 하지만, 트래픽 부하를 최대한 줄이고자 한다면 클라이언트 사이드 처리 방식을 고려해볼 수 있습니다. 한 가지 중요한 점은 어떤 선택을 하든 간에 적절한 보안 조치를 취하는 것입니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!