홈>
사용자 지정 UI를 만들려는 Azure AD B2C에서 API 프로젝트를 만들고 있습니다. 이 요구 사항에 대해 "Rest"API 및 "Graph"API 모두에서 어느 것이 더 나은지 알고 싶습니다.
누군가가 나에게 제안 할 수 있습니까?
- 답변 # 1
- 답변 # 2
Azure AD 및 API의 맥락에서 REST API라는 용어는 Microsoft Graph 서비스에 직접 액세스 할 때 사용됩니다. 모든 http 통신 코드, 인증, JSON 파싱 등을 작성합니다.
Graph API 또는 Graph client라는 용어는 위의 내용을 요약 한 Microsoft에서 개발 한 Graph Client SDK를 나타냅니다.
플랫폼 용 SDK가없는 경우 REST API를 직접 사용해야합니다. 그렇지 않으면 SDK를 사용하는 것이 좋습니다.
관련 자료
- python - var = fun ()과 var = fun의 차이점
- c - SIOCSIFFLAGS에서 setsockopt와 ioctl의 차이점은 무엇입니까?
- c - O1과 Os의 차이점은 무엇입니까?
- asp.net : "면도기"와 "cshtml"파일의 차이점은 무엇입니까?
- mercurial - hg revert --all과 hg up -c의 차이점은 무엇입니까?
- kotlin - 멤버 함수와 속성의 차이점
- c++ - 동적 배열 (GCC)과 포인터의 차이점
- types - Java에서 LongvalueOf (0)과 0L의 차이점은 무엇입니까?
- c# - 날짜 시간과 nullable 날짜 시간의 날짜 차이를 얻으려면
- Powershell을 사용하는 두 csv 파일의 차이점
- excel - 셀에 날짜 형식의 날짜가 포함 된 시간 간의 차이를 계산하는 방법은 무엇입니까? 조건도 있습니다
- c# - 생성자와 기본 메소드의 차이점은 무엇입니까?
- pytorch - modeltraining = False와 modelparamrequire_grad = False의 차이점은 무엇입니까?
- linux - / proc/self와/proc/$$의 차이점은 무엇입니까?
- javascript - 오늘과 다음 금요일의 시간 차이를 얻는 방법
- Hyperledger Fabric에서 보증 정책의 "Org1MSPmember", "Org1MSPpeer", "Org1MSPadmin", "Org1MSPclient&qu
- tensorflow - TF 20 Alpha와 TF 야간 미리보기의 차이점은 무엇입니까?
- algorithm - 모든 쿼리에 대한 그래프에서 u와 v 노드 사이의 경로에 대한 무언가 (최소/최대/고유) 찾기
- access vba - 다른 열에 일치하는 데이터가있는 경우 두 날짜의 차이를 계산할 수 있습니까? MTBF 계산
- functional programming - 라이터 모나드와리스트 라이터 모나드의 차이점
관련 질문
- 동일한 reactjs 앱 및 aspnet 코어 웹 API 내에서 Azure AD 및 Azure AD B2C 인증 혼합
- Xamarin.Forms에서 MSAL을 사용하여 Azure B2C SignUpSignIn 애플리케이션 클레임 가져오기
- Azure Synapse Pipeline의 동적 REST 호출
- Azure B2C 이벤트 로깅 -Azure Portal에서 로그인을 볼 수 있는 것과 같은 방식으로 고객이 로그아웃할 때 로깅이 가능한가요?
- Azure B2c를 사용하여 Flutter 앱에서 비밀번호 변경/재설정 활성화
- node.js : Azure AD B2C 가입
- 서로 다른 Azure AD B2C 테넌트의 두 앱에서 SSO를 활성화하려면 어떻게 해야 하나요?
- Xamarin.forms용 Azure AD B2C "주소가 잘못되어 Safari에서 페이지를 열 수 없습니다"?
- azure : 재설정 암호에 기본 레이아웃이 아닌 사용자 지정 레이아웃이 있는 MFA가 필요한 이유는 무엇입니까?
- Azure B2C 사용자 지정 정책 표시 API 오류
GraphQL은 종종 REST를 대체하는 것으로 언급되지만 실제로는 서로 다른 문제를 해결합니다.
REST는 시작하는 프로토콜이 아니라 스타일 일뿐입니다. 올바르게 적용하면 서버에서 클라이언트를 분리하기 만합니다. 따라서 REST 프린시 펄을 따르는 서버는 클라이언트에게 추가 단계를 수행하는 데 필요한 정보를 제공합니다. 클라이언트는 사전에 사전 지식없이 시작하여 요청을 발행하고 응답을 처리하여 즉시 학습합니다.
REST는 프로토콜에 구애받지 않는 반면, 많은 프로토콜 위에 구축 될 수 있지만 HTTP가 가장 두드러 질 수 있습니다. RESTful 클라이언트의 일반적인 샘플은 우리 모두에게 친숙한 웹 브라우저입니다. 북마크 된 URI를 호출하거나 주소 표시 줄에 입력 한 URI를 호출하여 시작합니다.HTTP는 요청 또는 응답을 보내야하는 표현을 지정하지 않지만이를 협상하는 클라이언트 및 서버에 남겨 둡니다. 클라이언트와 서버 모두 공통 인터페이스 (HTTP)에 의존하고 데이터를 교환하는 데 사용되는 알려진 미디어 유형에만 강력하게 바인딩 할 수 있으므로 디커플링에 도움이됩니다. 피어는 특정 표현으로 문서를 처리 할 수 없습니다 ( 각각의 MIME 유형 지원이 없음)은 다른 오류 메시지를 통해 다른 피어를 나타냅니다. 구문과 데이터 페이로드의 의미에 대한 사람이 읽을 수있는 문서 일 뿐인 미디어 유형은 REST 아키텍처에서 가장 중요한 부분입니다. 수신 된 페이로드를 구문 분석하고 해석하는 방법과 실제로 이해하는 방법을 동료에게 가르쳐줍니다. 그러나 많은 사람들이 여전히 JSON 기반 HTTP API의 REST를 과도하게 엔지니어링 된 URI와 혼동하여 URI에 약간의 노력을 기울였습니다. 실제로 클라이언트 나 서버가 URI에 대해 주어진 링크 관계 이름을 사용하기 때문에 클라이언트 나 서버가 해석하지 않을 때의 논리적 의미가 있습니다.
반면에 GraphQL은 클라이언트가 서버에서 검색하려는 특정 필드 및 요소를 요청할 수있는 쿼리 언어입니다. 느슨하게 말하면, 웹에 대한 일종의 SQL입니다. 따라서 클라이언트를 서버에 연결하는 데 사용 가능한 데이터를 미리 알고 있어야합니다. 서버가 일부 필드의 이름을 바꾸면 GraphQL 전문가가 아니지만 클라이언트가 해당 종류의 정보를 더 이상 검색하지 못할 수 있습니다.위에서 언급했듯이 REST는 직접 매핑 된 DB 항목/엔터티에 대한 쿼리를 수행 할 수있는 JSON 기반 HTTP API에 대해 종종 혼동됩니다. REST는 웹 노출 데이터베이스 항목의 검색 측면이 아닌 피어의 분리에 초점을 맞추고 있지만 REST를 금지하지는 않습니다.