So sánh biến _post và _get năm 2024
Khác Biệt Giữa Phương Thức POST và GETPOST và GET là hai trong số các phương thức phổ biến sử dụng trong biểu mẫu của trang web. Tuy nhiên có không hiểm các trường hợp lập trình viện đã lúng túng không biết nên lựa chọn giữa sử dụng phương thức GET hay POST khi tạo form. Cả hai phương thức này đều có thể được sử dụng để tạo biểu mẫu tuy nhiên việc sử dụng không chính xác sẽ gây khiến tạo ra những lỗ hổng bảo mật mà các hacker có thể khai thác triệt để. Như vậy thì câu hỏi ở đây là trong trường hợp nào nên sử dụng phương thức GET và ngược lại trường hợp nào thì nên sử dụng POST? Lựa Chọn Giữa GET và POSTĐể xác định được phương thức nào cần sử dụng thì bạn chỉ cần ghi nhớ công thức đơn giản sau:
Ở trên một tài nguyên có thể là một file văn bản, hình ảnh, video hoặc một trang HTML... Một ví dụ cụ thể như trong trường hợp bạn cần tạo một form để người dùng upload avatar hay video thì chúng ta thường sẽ sử dụng phương thức POST. Tuy nhiên khi tải về avatar hoặc video thì bạn lại muốn sử dụng phương thức GET. Tương tự chúng ta cũng sẽ sử dụng phương thức POST trong trang đăng ký tài khoản người dùng. Trong trường hợp này tài nguyên được tạo ra chính là dữ liệu người dùng như username, password ... Thông thường các dữ liệu này sẽ được lưu trữ trên cơ sở dữ liệu. Ngoài ra khi cần xử lý các thông tin nhạy cảm ví dụ như password thì bạn cần sử dụng POST thay vì GET. Điều này là bởi vì dữ liệu gửi bằng phương thức GET được hiển thị trên địa chỉ URL dưới dạng query string. Ví dụ:
Với URL ở trên thì phần ký tự phía dau dấu Điều này có nghĩa là trình duyệt sẽ lưu trừ dữ liệu này trong lịch sử duyệt web và sau đó sẽ hiển thị dữ liệu này để gợi ý người dùng khi họ nhập dữ liệu truy cập vào một URL có các ký tự tương tự ở các lần sau đó. So Sánh GET và POSTDưới đây là danh sách liệt kê cách điểm khác biệt mấu chôt giữa GET và POST:
Riêng đối với các bạn là developer thì cần chú ý rằng dữ liệu gửi bằng phương thức POST vẫn có thể được hiển thị thông qua công cụ phát triển developer tools của trình duyệt. Một trong những câu hỏi phỏng vấn phổ biến là phân biệt giữa hai phương thức GET và POST. Nên hôm nay mình sẽ cùng tìm hiểu như thế nào nhé. 1. Mục đích sử dụng - GET: Phương thức GET được sử dụng để yêu cầu dữ liệu từ máy chủ. Thông tin yêu cầu được gửi dưới dạng tham số, nối sau URL. Ví dụ: `http://mywebsite.com/page?param1=value1¶m2=value2`. - POST: Phương thức POST được sử dụng để gửi dữ liệu từ client đến server. Dữ liệu gửi trong phần body và mã hóa nếu sử dụng HTTPS. 2. Bảo mật - GET: Thông tin được gửi dưới dạng tham số URL, do đó thông tin có thể hiển thị trực tiếp trên trình duyệt hoặc trong lịch sử duyệt web. Điều này nó không thích hợp để gửi những thông tin nhạy cảm như mật khẩu. POST: Dữ liệu được gửi trong phần body, không hiển thị trực tiếp trên trình duyệt hoặc trong lịch sử duyệt web và được mã hóa nếu sử dụng HTTPS. Điều này làm cho phương thức POST an toàn hơn. 3. Dung lượng dữ liệu GET: Giới hạn về dung lượng (thường là 255 ký tự). POST: Không giới hạn về dung lượng. 4. Lưu trữ cache GET: Các yêu cầu GET có thể được lưu trữ trong bộ nhớ cache của trình duyệt hoặc các máy chủ proxy. Điều này giúp cải thiện về hiệu suất. POST: Các yêu cầu POST không được lưu trữ trong bộ nhớ cache. Tóm lại: GET thường dùng để yêu cầu lấy dữ liệu từ máy chủ và POST thường được sử dụng để gửi dữ liệu từ client đến server. GET có hiệu suất tốt hơn, nhưng gửi dữ liệu bằng POST lại an toàn hơn và không giới hạn dung lượng. |