새소식

프론트엔드 공부/네트워크

[HTTP/네트워크] 기초 종합퀴즈 풀이

  • -
1. 다음 그림은 터미널에서 npm start 명령어를 통해 리액트 앱을 실행한 화면입니다. 설명 중 옳은 것을 모두 고르세요. (정답 세 개)
[그림]터미널에서 실행한 리액트 앱

A.localhost 대신에 127.0.0.1로 접속할 수 있다.
B.포트 번호 3001번에서 실행중이다.
C.172.30.1.14 를 hosts로 사용할 수 있다.
D.URI를 통해 네트워크 통신을 위한 scheme이 HTTPS라는 것을 확인할 수 있다.
더보기

A. localhost 대신에 127.0.0.1로 접속할 수 있다. - 옳음.
localhost와 127.0.0.1은 로컬 호스트 주소라는 것은 같으며, 어떠한 호스트에서든 이 주소로 접속할 수 있다.


B. 포트 번호 3001번에서 실행중이다. - 옳음.
실행화면에서 보이는 http://localhost:3001, http://172.30.1.14:3001 은 포트번호 3001번에서 실행중인 것을 알 수 있다.

C. 172.30.1.14 를 hosts로 사용할 수 있다. - 옳음.
실행화면에서 보이는 http://172.30.1.14:3001 은 이 IP 주소를 호스트로 사용할 수 있다는 것을 알 수 있다.

D. URI를 통해 네트워크 통신을 위한 scheme이 HTTPS라는 것을 확인할 수 있다. - 틀림.
실행화면에서는 http라는 것을 알 수 있다. HTTPS는 암호화된 통신을 위해 사용되는 프로토콜이다.


2. 웹 아키텍처 전반을 간단히 설명하고자 합니다. 다음 문장에서 [A]~[C]와 키워드가 알맞게 짝 지어진 것을 고르세요.
[ 그림 ] 클라이언트 서버 통신
  • 클라이언트는 인터넷에 연결된 사용자의 디바이스, 또는 웹에 접근할 수 있는 소프트웨어를 뜻한다. 대표적인 예로 [A]가 있는데, [A]는 HTML, CSS, JavaScript 등으로 작성된 코드를 내부 엔진으로 해독하여 사용자가 쉽게 이해할 수 있는 형태의 콘텐츠로 보여주는 역할을 한다.
  • 서버는 클라이언트가 어떤 자원을 요청하면 해당 요청을 적절하게 처리하는 역할을 한다. 클라이언트는 서버의 자원을 어떻게 사용할 수 있는지 명시해 둔 인터페이스 [B]에 따라 요청을 전송한다.
  • 이렇게 클라이언트와 서버가 서로 요청과 응답을 주고받을 수 있는 것은 [C]라는 통신 규약 덕분이다.
더보기

A. [A] - 브라우저, [B] - API, [C] - HTTP

B. [A] - API, [B] - 브라우저, [C] - HTTP

C. [A] - HTTP, [B] - 브라우저, [C] - API

D. [A] - 브라우저, [B] - HTTP, [C] - API

E. [A] - API, [B] - HTTP, [C] - 브라우저

3. 이것은 웹 개발에서 사용하는 대표적인 프로토콜입니다. 기본 포트로 80을 사용하는 이것은 무엇인지 고르세요

A. SSH
B. SMTP
C. FTP
D. HTTP
E. HTTPS
더보기
A.SSH

B. SMTP

C. FTP

D. HTTP
HTTP 가 웹 개발에서 사용하는 대표적인 프로토콜 이기 때문입니다. 기본 포트로 80을 사용하며, 클라이언트와 서버가 서로 요청과 응답을 주고받는 기본적인 웹 통신 규약입니다.

E. HTTPS
 
 
A. SSH, B. SMTP, C. FTP는 웹 개발에서 사용하는 프로토콜이 아니며 E. HTTPS는 HTTP 암호화 버전입니다.

4. 다음은 HTTP 상태코드와 설명입니다. 설명 중 옳지 않은 것을 고르세요.

A. 200 : OK, 성공적으로 응답을 마침
B. 302 : Found, 리다이렉트할 URL을 확인함
C. 404 : Not Acceptable, 클라이언트가 응답 코드를 받을 수 없음
D. 500 : Internal Server Error, 서버에서 에러가 발생함
더보기

 

A. 200 : OK, 성공적으로 응답을 마침

B. 302 : Found, 리다이렉트할 URL을 확인함

C. 404 : Not Acceptable, 클라이언트가 응답 코드를 받을 수 없음.
404 상태 코드는 요청된 리소스를 서버에서 찾을 수 없을 때 사용됩니다. 선택한 설명은 '클라이언트가 응답 코드를 받을 수 없음' 이기 때문에 옳지 않은 설명입니다.

D. 500 : Internal Server Error, 서버에서 에러가 발생함

 


5. 다음은 HTTP Messages에 대한 설명입니다. 설명 중 옳지 않은 것을 고르세요.

A. HTTP Messages는 요청과 응답으로 나뉜다.
B. 요청과 응답은 유사한 구조를 가지며, 요청의 첫 번째 줄은 Start line이다.
C. HTTP Messages의 구조는 start line(status line), HTTP headers, empty line, body로 구분할 수 있다.
D. GET http://developer.mozilla.org/en-US/docs/Web/HTTP/Messages HTTP/1.1 은 URL에 새로운 정보를 입력합니다.
더보기
A. HTTP Messages는 요청과 응답으로 나뉜다.

B. 요청과 응답은 유사한 구조를 가지며, 요청의 첫 번째 줄은 Start line이다.

C. HTTP Messages의 구조는 start line(status line), HTTP headers, empty line, body로 구분할 수 있다.

D. GET http://developer.mozilla.org/en-US/docs/Web/HTTP/Messages HTTP/1.1 은 URL에 새로운 정보를 입력합니다.
GET 은 URL에 새로운 정보를 입력합니다. 입니다. GET 메서드는 URL에서 정보를 가져오는 것이고, 새로운 정보를 입력하는 것은 POST, PUT, PATCH등의 메서드를 사용하면 됩니다.

6. AJAX에 대한 다음 설명 중 옳지 않은 것을 고르세요.

A. HTTP Messages는 요청과 응답으로 나뉜다.
B. 요청과 응답은 유사한 구조를 가지며, 요청의 첫 번째 줄은 Start line이다.
C. HTTP Messages의 구조는 start line(status line), HTTP headers, empty line, body로 구분할 수 있다.
D. GET http://developer.mozilla.org/en-US/docs/Web/HTTP/Messages HTTP/1.1 은 URL에 새로운 정보를 입력합니다.
더보기

A. AJAX 도입 전에는 XMLHttpRequest를 이용하여 동적으로 페이지 렌더링을 했다.

B. AJAX는 부분 데이터가 아니라 전체 페이지를 reload 하는 기술을 의미한다.
AJAX는 Asynchronous JavaScript and XML의 약자로, 비동기적으로 서버에 데이터를 요청하고 응답을 받는 기술입니다. 따라서 AJAX를 이용하면 페이지를 새로고침하지 않고도 부분적으로 데이터를 갱신할 수 있어 사용자 경험을 향상시키는데 도움이 됩니다.

Fetch API는 AJAX와 비슷하지만, 일반적으로 AJAX라 할 때는 XMLHttpRequest를 이용하는 기법을 의미하며 Fetch API는 새로운 웹 표준으로 이를 대체하는 기술입니다.

C. 비동기적인 웹앱 제작을 위한 웹 개발 기법이다.


D. Fetch API를 통해 AJAX 요청을 보낼 수 있다.


7. Fetch API를 사용하면 각 브라우저마다 다른 방법으로 AJAX를 사용해야 한다.

A. O
B. X
더보기

A. O

B. X
AJAX는 비동기적으로 서버와 통신하는 기법으로, 일반적으로 XMLHttpRequest 객체를 사용하여 구현되었습니다. Fetch API는 최신 브라우저에서 사용 가능한 새로운 웹 API로, AJAX를 사용하여 데이터를 가져오는 방법으로 사용될 수 있습니다.

하지만 Fetch API를 사용하면 각 브라우저마다 다른 방법으로 AJAX를 사용해야 하는 것은 아닙니다, Fetch API는 새로운 웹 API로써 일반적인 방법으로 사용 가능하며 각 브라우저마다 지원이 되며, 그렇기에 이를 사용하면 구현이 간단해지며, 유지보수도 쉬워진다.


8. 아래의 HTTP 메시지에 대한 설명으로 옳지 않은 것을 모두 고르세요. (정답 두 개)
HTTP/1.1 200 OK
Date: Sun, 18 Oct 2009 08:56:53 GMT
Server: Apache/2.2.14 (Win32)
Last-Modified: Sat, 20 Nov 2004 07:16:26 GMT
ETag: "10000000565a5-2c-3e94b66c2e680"
Accept-Ranges: bytes
Content-Length: 44
Connection: close
Content-Type: text/html
X-Pad: avoid browser bug

<html><body><h1>It works!</h1></body></html>

A. HTTP 응답이다.
B. 상태 코드가 200이며 응답이 성공적으로 이루어졌다.
C. POST method를 사용했다.
D. 응답의 payload가 없다.
더보기

A. HTTP 응답이다. // HTTP/1.1

B. 상태 코드가 200이며 응답이 성공적으로 이루어졌다.  // 200 OK

C. POST method를 사용했다.

D. 응답의 payload가 없다.

HTTP 응답은 HTTP/1.1 200 OK, Date, Server, Last-Modified, ETag, Accept-Ranges, Content-Length, Connection, Content-Type, X-Pad와 같은 헤더와 바디로 구성되어 있다. 
이 응답에서는 GET method를 사용하였고 payload(<html><body><h1>It works!</h1></body></html>)는 존재한다.


9.IP에 대한 설명으로 옳지 않은 것을 고르세요.

A. IP는 Internet Protocol의 줄임말로, 인터넷상에서 사용하는 주소체계를 의미한다.
B. 용도가 정해져있는 IP주소가 존재한다.
C. IPv4는 4개의 덩어리로 구분되어 있으며, 덩어리마다 0부터 100까지 나타낼 수 있고, 따라서 약 1억 개의 IP주소를 표현할 수 있습니다.
D. IPv4의 한계 때문에 IPv6가 생겨나게 되었고, 총 2^(128)개의 IP주소를 표현할 수 있습니다.
더보기

A. IP는 Internet Protocol의 줄임말로, 인터넷상에서 사용하는 주소체계를 의미한다.

B. 용도가 정해져있는 IP주소가 존재한다.

C. IPv4는 4개의 덩어리로 구분되어 있으며, 덩어리마다 0부터 100까지 나타낼 수 있고, 따라서 약 1억 개의 IP주소를 표현할 수 있습니다.
IPv4의 각 덩어리는 0에서 255까지의 숫자로 표현될 수 있습니다. 각 덩어리의 값이 0에서 255이기 때문에, 4개의 덩어리로 구성된 IPv4 주소는 약 4,294,967,296개 (256^4)의 IP 주소를 표현할 수 있습니다.

D. IPv4의 한계 때문에 IPv6가 생겨나게 되었고, 총 2^(128)개의 IP주소를 표현할 수 있습니다.


10.다음 URI에 대한 설명으로 옳은 것을 모두 고르세요. (정답 두 개)
      https://www.google.com/search?q=codestates


A. port 번호는 80번을 쓴다.
B. 해당 URI는 scheme, hosts, port만으로 이루어져 있다.
C. 주어진 URI는 URL이라고 할 수 있다.
D. url-path는 /search이다.
E. query는 ?q=codestates이다.
더보기

 

A. port 번호는 80번을 쓴다.
Port 번호는 웹 서버와 클라이언트 간의 통신에 사용되는 번호입니다. 기본 포트 번호는 80번입니다. 하지만 주어진 URI에서는 프로토콜이 https로 되어 있어 포트 번호가 80번인 것이 아닐 수 있습니다.

B. 해당 URI는 scheme, hosts, port만으로 이루어져 있다.
URI는 scheme, authority, path, query, fragment 등으로 구성될 수 있습니다. 주어진 URI에서 scheme과 path, query만으로는 이루어져 있지 않습니다. authority (www.google.com), port도 포함되어 있습니다.

C. 주어진 URI는 URL이라고 할 수 있다.
URI (Uniform Resource Identifier) 중 하나인 URL (Uniform Resource Locator)은 웹 자원의 위치를 식별하는 문자열을 의미합니다. 주어진 URI "https://www.google.com/search?q=codestates"은 웹 자원의 위치를 나타내는 것으로 URL이라 할 수 있습니다.

URL은 URI라고 할 수 있지만, URI가 더 큰 개념이기 때문에 URI는 URL이라고 할 수 없습니다. 

D. url-path는 /search이다.
URL은 프로토콜 (https), 호스트 (www.google.com), port, url-path (/search), query (?q=codestates) 등으로 구성됩니다. 주어진 URI에서 url-path는 /search입니다.

E. query는 ?q=codestates이다.
Query는 URL에서 전달하고자 하는 데이터를 나타내는 부분입니다. 주어진 URI에서 query는 ?q=codestates입니다. 즉, 구글 검색에서 codestates라는 검색어를 사용한 것을 나타냅니다.

 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.