Guzzle

Guzzle là một PHP HTTP client giúp việc gửi HTTP request trở lên đơn giản. 

Guzzle không còn yêu cầu cURL để gửi HTTP request. Guzzle sẽ sử dụng PHP stream wrapper để gửi HTTP requests nếu cURL không được cài đặt. Ngoài ra bạn cũng có thể sử dụng HTTP handler của riêng mình để gửi request.

Ưu điểm, đặc điểm Guzzle:

  • Dễ dàng thực hiện tạo query string, POST request, streaming large upload, streaming large download, sử dụng HTTP cookies, upload dữ liệu Json….
  • Có thể gửi cả request đồng bộ và không đồng bộ bằng cách sử dụng cùng một interface.
  • Sử dụng tiểu chuẩn PSR-7 cho request, response, stream. Điều này giúp bạn dễ dàng tích hợp các thư viện khác sử dụng PSR-7 với Guzzle. (Các phiên bản trước không sử dụng PSR-7)
  • Không phụ thuộc chặt vào cURL, PHP stream, sockets hoặc vòng lặp không bị chặn.
  • Hệ thống Middleware cho phép bạn kiểm soát hành vi của client