| 항목 | 설명 |
|---|---|
| 🔗 링크 가능 | 다른 문서나 콘텐츠로 이동할 수 있음 |
| 🌐 비선형 구조 | 순서대로 읽지 않아도 됨 (자유로운 탐색 가능) |
| 📚 정보 연결 | 여러 페이지나 주제를 서로 연결해 큰 정보망을 만듦 |
| 요소 | 설명 |
|---|---|
텍스트 | 사용자에게 보여질 내용 |
태그(tag) | 문서의 구조를 정의 (ex: 제목, 문단, 링크 등) |
속성(attribute) | 태그에 추가 정보를 부여 (ex: href, src, alt) |
<!DOCTYPE html>
<html>
<head>
<title>내 첫 웹페이지</title>
</head>
<body>
<h1>안녕하세요!</h1>
<p>이 페이지는 <a href="about.html">회사 소개</a>로 연결됩니다.</p>
</body>
</html>
<!DOCTYPE html>: HTML5 문서임을 명시
<html>: 전체 HTML 문서의 루트
<head>: 제목, 메타 정보 등 포함
<body>: 화면에 보이는 실제 콘텐츠
<a href="...">: 다른 문서로 이동하는 하이퍼텍스트 링크
브라우저는 그 주소에 대해 HTTP 요청(request)을 서버에 보냅니다.
서버는 HTTP 응답(response)을 브라우저에 돌려줍니다.
그 응답 안에는 HTML, 이미지, JSON 데이터 등이 들어 있습니다.
기본 구조
- HTTP 요청 (Request)
GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Chrome/123.0
HTTP 응답 (Response)
HTTP/1.1 200 OK
Content-Type: text/html
<html> ... </html>
특징
| 항목 | 설명 |
|---|---|
| 📡 프로토콜 | 통신 방식의 약속 (규칙)입니다 |
| 🔁 클라이언트-서버 구조 | 클라이언트가 요청하고 서버가 응답합니다 |
| ❌ 상태 비저장(Stateless) | 서버는 이전 요청의 상태를 기억하지 않습니다 |
| 📬 요청 방식 (메서드) | GET, POST, PUT, DELETE 등 |
| 📄 데이터 형식 | HTML, JSON, XML, 이미지 등 전송 가능 |
| 메서드 | 설명 | 예시 |
|---|---|---|
GET | 리소스 조회 | /users/1 |
POST | 새 리소스 생성 | /users |
PUT | 리소스 전체 수정 | /users/1 |
PATCH | 리소스 일부 수정 | /users/1 |
DELETE | 리소스 삭제 | /users/1 |
[사용자 브라우저]
↓ HTTP 요청
[웹 서버 - 예: Spring]
↓
[데이터 처리 후]
↑ HTTP 응답 (HTML, JSON 등)
[브라우저 화면에 표시]