[CS스터디]Day 32

DaramGee·2024년 5월 17일

Study

목록 보기
19/20

일시 : 2024.05.16 10:00~10:30

JSON과 XML의 차이점을 설명하세요

JSON(JavaScript Object Notation):
JSON은 JavaScript에서 데이터를 저장하고 교환하기 위해 개발된 경량의 데이터 교환 형식입니다. 주로 서버와 클라이언트 간의 데이터 전송에 사용되며 데이터는 키-값 쌍으로 표현합니다.

XML(Extensible Markup Language):
XML은 데이터를 저장하고 전송하기 위한 문자 기반의 마크업 언어입니다. HTML과 유사한 형식을 가지고 있으며, 태그로 데이터를 표현합니다. 태그는 미리 정의되어 있지 않으므로 사용자 정의된 태그를 정의해야됩니다.

차이점

  • JSON은 유형으로 문자열, 숫자, 배열 모두 가능하지만 , XML은 모두 문자열이어야 합니다
  • JSON은 네임스페이스를 지원하지 않아 확장성이 떨어지지만 XML은 네임스페이스를 지원하여 확장성이 높습니다.
  • JSON은 UTF-8 인코딩만 지원하지만 XML은 여러 인코딩을 지원합니다.
  • JSON은 자바스크립트 표준 함수인 eval() 함수로 파싱되나 XML은 XML 파서로 파싱됩니다.
  • JSON은 간결한 형식으로 인해 용량이 작고 처리 속도가 빠르지만, XML은 태그와 속성으로 인해 용량을 많이 차지합니다.
  • JSON은 자바스크립트 객체 표기법으로 작성되어 있어서, 파싱 속도가 빠르지만 XML은 태그를 사용하여 구조화 되어 있어 파싱 속도가 상대적으로 느립니다.

JSON 표현식은 쉽게 읽고 쓸 수 있으며 용량이 작으며 처리속도가 빠르기때문에 최근에는 XML 을 대체하여 데이터 전송 방식으로 많이 사용되고 있습니다."

OAuth가 무엇인가요? 그 처리 흐름은?

OAuth(Open Authorization)란 특정 애플리케이션이 다른 애플리케이션의 사용자 정보에 접근할 수 있는 권한을 관리하는 프로토콜 입니다.

OAuth 동작에 관여하는 참여자는 크게 세 가지로 구분할 수 있습니다.

  • Resource Server : Client가 제어하고자 하는 자원을 보유하고 있는 서버입니다. Facebook, Google, Twitter 등이 이에 속합니다.
  • Resource Owner : 자원의 소유자입니다. Client가 제공하는 서비스를 통해 로그인하는 실제 유저가 이에 속합니다.
  • Client : Resoure Server에 접속해서 정보를 가져오고자 하는 클라이언트(웹 어플리케이션)입니다.

흐름 :
OAuth의 흐름은 다음과 같습니다.
1. Resource Owner(User)가 Client에게 OAuth2.0 사용 요청을 보냅니다
2. Client는 권한 서버에 권한 부여 승인 코드 요청을 보내며 권한 서버에서 제공하는 로그인 페이지를 띄어 Resource Owner에게 보여줍니다
3. Resource Owner가 로그인을 성공 시 권한 서버는 redirect_url로 Authorization Code를 전달합니다.
4. Client는 Authorization Code를 권한 서버에 전달하여 Access Token을 발급합니다.
5. Client는 Header에 Access Token을 삽입하여 Resource Server에 요청 시 실제 사용자의 데이터에 접근가능합니다."

스터디 현황

0개의 댓글