Http và những điều cần nắm vững để học Spring Boot

Http và những điều cần nắm vững để học Spring Boot

Chia sẻ kiến thức 28/02/2022

FUNiX sẽ giúp bạn tìm hiểu về chủ đề bên lề nhưng rất quan trọng không chỉ với Spring Boot mà còn với lập trình website nói chung, đó là Http.

Sơ lược về Http

Http ( HyperText Transfer Protocol hay còn gọi là Giao thức truyền dẫn siêu văn bản) là một giao thức mạng được thiết kế theo mô hình client – server giúp thực hiện được các giao tiếp giữa client và server theo cặp request – response, client sẽ gửi request lên server để xử lý và nhận các kết quả trả về bằng response.

Http request

Có những gì xuất hiện trong một request?

Để thực hiện được giao tiếp với server, client sẽ khởi tạo và gửi đi những Http request bằng cách nhấn vào những đường link hoặc button trong trình duyệt của mình.

Một Http request.

Bắt đầu của Http request là Request Line bao gồm các thông tin:

  • Method: là phương thức mà request sử dụng (thường là GET, POST, PUT và DELETE), trong ví dụ trên là GET.
  • URI (Uniform Resource Identifier): là địa chỉ định danh của các tài nguyên được yêu cầu, trong ví dụ là /doc/test.html.
  • HTTP Version: là phiên bản Http đang được sử dụng nhiều nhất, trong ví dụ là HTTP/1.1.

Sau đó là các trường Request Headers, giúp làm rõ thêm các thông tin bổ sung cho request và client:

  • Accept: loại nội dung được chấp nhận cho các response trả về từ server, trong ví dụ là image/gif, image/jpeg.
  • Accept-Language: ngôn ngữ mặc định của client, trong ví dụ là en-us (tiếng Anh Mỹ)
  • Accept-Encoding: các mã hóa được chấp nhận, trong ví dụ là gzip, deflate
  • User-Agent: thông tin về user-agent của người dùng, trong ví dụ trên là Mozilla/4.0
  • Content-Length: kích cỡ phần thân của các request, trong ví dụ là 36

Về GET và POST

Đây là 2 phương thức được sử dụng nhiều nhất đối với Http request, bảng dưới đây sẽ so sánh một vài đặc điểm chính của 2 phương thức này

GET POST
Câu truy vấn được đưa vào đường dẫn của request Câu truy vấn được lưu trong body của request
Bị giới hạn về độ dài Không bị giới hạn về độ dài
Có thể được cached, bookmarked và lưu lại trong lịch sử Không bị cached, bookmarked hay lưu lại trong lịch sử duyệt web
Không nên dùng cho dữ liệu quan trọng, chỉ nên dùng để nhận dữ liệu Phù hợp để dùng cho dữ liệu hoặc tác vụ quan trọng, bảo mật vì che giấu thông tin tốt hơn

Http response

Có những gì xuất hiện trong một response?

Một Http response

Qua ví dụ trên có thể thấy cấu trúc của Http response cũng tương tự với Http request, chỉ khác nhau ở chỗ request có Request Line còn đối với Http response có Status Line, và Status Line của response thì bao gồm 3 phần:

  • Http-Version: phiên bản Http cao nhất để hỗ trợ, trong ví dụ là HTTP/1.1
  • Status Code: mã kết quả trả về, trong ví dụ trên là 200
  • Reason-Phrase: mô tả về Status Code, trong ví dụ trên là OK

Http Status Code

Một điều cần chú ý khi code của các API bằng Spring Boot là cần tạo những response rõ ràng về ý nghĩa nhất để client có thể dễ hiểu và xử lý, và Status code của response là yếu tố quan trọng tạo nên điều này. Hãy cùng tìm hiểu một vài Status Code thông dụng dưới đây

Một số Http Status Code

Lời kết

Trên đây là một vài kiến thức cơ bản về Http cũng như Http request và response, hy vọng sẽ giúp các bạn có được cái nhìn tổng quan về nó và ứng dụng vào quá trình học Spring Boot sau này. Trong những bài viết tới FUNIX sẽ cung cấp cho các bạn thêm về REST cũng như cách sử dụng Postman để giúp việc học Spring Boot thuận tiện hơn nhé. Cảm ơn các bạn đã đọc bài và hẹn gặp lại.

Lương Thuận 

ĐĂNG KÝ TƯ VẤN HỌC LẬP TRÌNH TẠI FUNiX

Bình luận (
0
)

Bài liên quan

  • Tầng 0, tòa nhà FPT, 17 Duy Tân, Q. Cầu Giấy, Hà Nội
  • info@funix.edu.vn
  • 0782313602 (Zalo, Viber)        
Chat Button
FUNiX V2 GenAI Chatbot ×

yêu cầu gọi lại