cURL là gì? Tổng hợp các lệnh cURL trong Linux

cURL là gì ? Sử dụng như thế nào ? Các lệnh cURL trong Linux cần biết là gì ? Cùng chúng tôi khám phá nhé !

cURL là gì ?

cURL viết tắt của Client URL. Đây là một công cụ dòng lệnh (command line tool) và thư viện dùng để kiểm tra kết nối từ URL và cho phép truyền dữ liệu thông qua nhiều giao thức khác nhau.

HTTP, HTTPS, FTP, FTPS, SCP, SFTP, FILE, IMAP, SMTP, POP3, … là những giao thức cURL được sử dụng tiếp tục .

cURL là gì? Tổng hợp các lệnh cURL trong Linux (1)

cURL được viết bởi Daniel Stenberg bằng C vào năm 1997 .

Chức năng của cURL

Giao thức HTTP giúp cURL tương hỗ việc gửi đi một request với toàn bộ những phương pháp hiện có như GET, POST, PUT, DELETE, …

  • Hỗ trợ người dùng tải xuống máy một trang web trên mạng Internet. Đây là một trong những chức năng cơ bản nhất của cURL.
  • Vận chuyển các tập tin, hình ảnh, dữ liệu,… từ nơi khác đến máy chủ hoặc từ máy chủ đến nơi khác.
  • Kiểm tra cookies nào đã được tải trên URL.

4 bước sử dụng cURL PHP cơ bản

Bước 1: Khởi tạo cURL

Hàm sử dụng: curl_init ().

Bạn sẽ nhận được một resource ( một kiểu tài liệu được định nghĩa trong PHP ) từ mạng lưới hệ thống .

Bước 2: Thiết lập tùy chọn request

Hàm sử dụng: curl_setopt(). Đây là hàm quan trọng để xử lý các dữ liệu đầu vào. Ví dụ như: content-type, charset hoặc giá trị cookies, giao thức HTTP,…

Các curl_setopt() bắt buộc phải đứng trước curl_exec() thì mới có tác dụng.

Curl_setopt() thường sẽ có 3 tham số đầu vào:

  • Đối tượng cURL.
  • Tên cấu hình.
  • Giá trị của cấu hình.

Các tham số được ngăn cách với nhau bằng dấu phẩy. Ví dụ: curl_setopt($ch, CURLOPT_URL, ‘https:///’ ).

CURLOPT_URL, CURLOPT_RETURNTRANSFER, CURLOPT_TIMEOUT, CURLOPT_USERAGENT, CURLOPT_FILE, … là những thông số kỹ thuật thông dụng với cURL .

Bước 3: Thực thi

Hàm sử dụng: curl_exec().

Bước 4: Đóng request, giải phóng tài nguyên

Hàm sử dụng: curl_close().

Đóng request sẽ giúp bạn tiết kiệm ngân sách và chi phí đáng kể tài nguyên của mạng lưới hệ thống và nâng cao hiệu suất cho server .

Tổng hợp những lệnh cURL Linux Command

1. Lệnh kiểm tra phiên bản cURL

Cú pháp : cURL trong Linux có cú pháp :

curl [OPTIONS] [URL]

Tác dụng: Giúp bạn biết được cURL đã được cài đặt hay chưa, phù hợp với giao thức nào. Lệnh kiểm tra phiên bản cURL thường được sử dụng để hiển thị nội dung trên trang.

Ví dụ: Nếu muốn xem nội dung của trang yourdomain.com, bạn cần sử dụng cú pháp: curl yourdomain.com. Hệ thống sẽ render (kết xuất) cho bạn mã nguồn trang chủ của domain này.

2. Dùng cURL Command để tải file

Tác dụng: Dùng để tải một dữ liệu từ máy chủ ở xa.

cURL là gì? Tổng hợp các lệnh cURL trong Linux (2)

Có 2 cách thao tác:

Cách 1: Lưu file trên folder hiện hành. Tên file download xuống giống với tên file từ xa.

Cú pháp:

curl -O http://yourdomain.com/yourfile.tar.gz

Dùng cách này, file sẽ được lưu với tên yourfile.tar.gz .

Cách 2: Cho phép tùy chọn tên file và đường dẫn lưu trữ.

Cú pháp:

curl -o newyourfile.tar.gz http://yourdomain.com/yourfile.tar.gz

Dùng cách này, file sẽ được lưu với tên mới là newyourfile.tar.gz

3. Lệnh HTTP cURL Command

  • Sử dụng như một server proxy để tải file. Cú pháp:
curl -x sampleproxy.com:8090 -U username:password -O http:// testdomain.com/testfile.tar.gz
  • Kiểm tra thông tin header của web HTTP. Câu lệnh thực hiện:
curl -I www.yourdomain.com
  • Gửi yêu cầu GET và POST:

Cú pháp GET request :

curl http://mydomain.com

Cú pháp POST request :

curl –data “text=Howareyou” https://mydomain.com/firstpage.jsp

4. Lệnh cURL cho Cookies

Tác dụng: Kiểm tra các cookies nào được tải trên URL

Cú pháp:

curl --cookie-jar Mycookies.txt https://www.samplewebsite.com /index.html -O

Nếu có sẵn cookies trong file, bạn hoàn toàn có thể upload nó lên website. Câu lệnh vận dụng :

curl --cookie Mycookies.txt https://www. samplewebsite.com

5. Lệnh cURL cho FTP

Để tải file từ sever từ xa, bạn dùng câu lệnh :

curl -u username:password -O ftp://nameftpserver/yourfile.tar.gz

Để tải file lên sever FTP, bạn dùng câu lệnh :

curl -u username:password -T yourfile.tar.gz ftp://nameftpserver

6. Hàm cURL thiết lập tùy chọn cùng lúc

Nếu muốn thực hiện nhiều thiết lập tùy chọn cùng lúc, bạn nên sử dụng hàm curl_setopt_array().

Cấu trúc hoàn chỉnh của hàm curl_setopt_array() sẽ có dạng như sau:

curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => 'https:///',
CURLOPT_USERAGENT => 'Exmaple POST',
CURLOPT_POST => 1,
CURLOPT_POSTFIELDS => http_build_query(array(
'email' => 'sydney@fife',
'password' => 'pistol'
))

7. Lệnh số lượng giới hạn output của cURL

Cú pháp:

curl --limit-rate 100K http://testdomain.com/samplefile.tar.gz -O

Câu lệnh này đã giới hạn băng thông tải xuống là 100K.

Giới hạn băng thông sẽ hạn chế thực trạng dung tích file quá lớn khiến máy tải về chậm, nghẽn mạng, …
cURL là một công cụ dòng lệnh can đảm và mạnh mẽ và được sử dụng rất phổ cập lúc bấy giờ. Hy vọng với những san sẻ trên đây, bạn đã hiểu hơn về lệnh cURL và sớm sử dụng thành thạo nó !

Nguồn : TINO