1. HTTP là gì?

HTTP là giao thức truyền tải dữ liệu trên Internet, được sử dụng để trình duyệt và máy chủ giao tiếp với nhau.

Ví dụ khi truy cập một website, trình duyệt sẽ gửi HTTP Request đến Server. Server xử lý yêu cầu rồi gửi HTTP Response trả dữ liệu về cho trình duyệt.

Hiểu đơn giản:

  • Client 
  • HTTP Request 
  • Server 
  • HTTP Response 
  • Client

Hypertext Transfer Protocol – Wikipedia tiếng Việt

2. HTTPS là gì?

HTTPS là phiên bản bảo mật của HTTP.( theo em tìm hiểu là nó sẽ bảo mật hơn HTTP)

HTTPS sử dụng SSL và TLS để mã hóa dữ liệu giữa Client và Server. Nhờ vậy, thông tin truyền đi khó bị người khác đọc hoặc thay đổi.

Hiểu đơn giản:

HTTP = truyền dữ liệu

HTTPS = truyền dữ liệu và mã hóa thêm bảo mật

What is HTTPS? - SSL.com

3. HTTP hoạt động như thế nào?

Khi người dùng truy cập một website:

1 Người dùng nhập địa chỉ website.

2 Browser gửi Request đến Server.

3 Server nhận và xử lý Request.

4 Server gửi Response về Browser.

5 Browser hiển thị nội dung cho người dùng.

Ví dụ:

Người dùng truy cập trang đăng nhập → gửi thông tin đăng nhập → Server kiểm tra → Server trả về kết quả đăng nhập.

Một HTTP Request thường có các thành phần như Method, URL, Headers và Body.

Một số HTTP Method phổ biến:

  • GET: lấy dữ liệu.
  • POST: gửi hoặc tạo dữ liệu.
  • PUT: cập nhật dữ liệu.
  • DELETE: xóa dữ liệu.
  • 4. HTTPS bảo mật như thế nào?

HTTPS sử dụng TLS để bảo vệ dữ liệu trong quá trình truyền.

HTTPS giúp đảm bảo ba yếu tố chính:

Encryption: Mã hóa dữ liệu để người khác khó đọc được.

Authentication: Xác thực Server thông qua chứng chỉ số.

Integrity: Đảm bảo dữ liệu không bị thay đổi trong quá trình truyền.

5. HTTP và HTTPS khác nhau như thế nào?

HTTP:

  • Không sử dụng TLS để mã hóa dữ liệu.
  • Mức độ bảo mật thấp hơn HTTPS.
  • Thường sử dụng port 80.
  • Dữ liệu truyền đi có nguy cơ bị nghe lén hoặc can thiệp.
  • Hiện nay không được ưu tiên đối với các website cần bảo mật.

HTTPS:

  • Sử dụng SSL/TLS để mã hóa dữ liệu.
  • Bảo mật hơn HTTP.
  • Thường sử dụng port 443.
  • Giúp hạn chế việc dữ liệu bị đọc hoặc thay đổi trong quá trình truyền.
  • Được sử dụng phổ biến trên website, hệ thống và API hiện nay.Sự khác nhau giữa http và https

6. HTTP Status Code

Một số mã phổ biến:

  • 200 OK → Request thành công.
  • 201 Created → Tạo dữ liệu thành công.
  • 400 Bad Request → Request không hợp lệ.
  • 401 Unauthorized → Chưa xác thực.
  • 403 Forbidden → Không có quyền truy cập.
  • 404 Not Found → Không tìm thấy tài nguyên.
  • 500 Internal Server Error → Lỗi phía Server.

7. Tóm gọn dễ hiểu

Có thể hiểu đơn giản:

HTTP là giao thức giúp Client và Server giao tiếp, gửi và nhận dữ liệu trên Internet.

HTTPS cũng thực hiện việc đó nhưng có thêm TLS để mã hóa và bảo vệ dữ liệu.

Dễ nhớ:

HTTP là giao tiếp

HTTPS vẫn là giao tiếp nhưng thêm bảo mật

Các thuật ngữ liên quan cần nhớ: Client, Server, Request, Response, HTTP Method, Status Code, Header, Body, SSL/TLS, Encryption, Authentication, Port 80, Port 443.

Bài viết khác

SOLID

SOLID ra đời như thế nào? Lập trình hướng đối tượng (Object-Oriented Programming – OOP) là một trong những mô hình lập trình được sử dụng phổ biến. OOP cung cấp các đặc tính giúp chúng ta mô hình hóa và tổ chức chương trình theo các đối tượng, bao gồm: Tính trừu tượng (Abstraction): […]

Testing Principles & Testing Levels

Testing Principles & Testing Levels là gì? Trong kiểm thử phần mềm, Testing Principles (Các nguyên tắc kiểm thử) là kim chỉ nam giúp định hướng cách thực hiện kiểm thử hiệu quả, trong khi Testing Levels (Các cấp độ kiểm thử) là các giai đoạn phân loại phạm vi kiểm thử từ nhỏ đến […]

Dart OOP

Dart OOP Dart OOP (Object-Oriented Programming) là cách lập trình dựa trên object (đối tượng) và class (lớp). Dart hỗ trợ đầy đủ các khái niệm OOP, giúp tổ chức code thành các đối tượng có dữ liệu (properties) và hành vi (methods), từ đó code dễ quản lý, tái sử dụng và mở rộng […]

SOLID và Design pattern

SOLID SOLID là 5 nguyên tắc thiết kế phần mềm hướng đối tượng, giúp xây dựng hệ thống dễ hiểu, dễ thay đổi, dễ mở rộng, dễ test, ít gây ảnh hưởng dây chuyền, dễ bảo trì SOLID gồm: S: Single Responsibility Principle O: Open/Closed Principle L: Liskov Substitution Principle I: Interface Segregation Principle D: […]

SDLC&STLC

1. Tổng quan nền tảng về quy trình phát triển và kiểm thử phần mềm Trong bất kỳ một dự án công nghệ thông tin nào, dù là ứng dụng di động nhỏ hay hệ thống phần mềm doanh nghiệp khổng lồ, việc để sản phẩm đi đến thành công không thể dựa vào sự […]

Kanban vs Scrum, Scrumban và phần nâng cao

Kanban vs Scrum, Scrumban và phần nâng cao So sánh Kanban và Scrum Tiêu chí Kanban Scrum Bản chất Phương pháp quản lý dòng chảy liên tục Framework phát triển theo chu kỳ Nhịp làm việc Dòng chảy liên tục Khung thời gian cố định (Sprint 1-4 tuần) Cam kết phạm vi Theo khả năng […]

Leave a Reply

Your email address will not be published. Required fields are marked *