Bỏ qua menu, vào nội dung chính
Quay lại
cURL Converter

cURL converter: chuyển request cURL sang mã nguồn

Dán lệnh cURL để chuyển sang mã fetch (JavaScript), axios (Node), requests (Python), net/http (Go), giữ đúng method, header và body.

cURL command

const response = await fetch("https://api.alodev.vn/v1/leads", {
  method: "POST",
  headers: {
    "Authorization": "Bearer xxx",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({"name":"Trần Văn A","email":"a@example.com","budget":"30-60tr"})
});
const data = await response.json();

Parsed structure

MethodPOST
URLhttps://api.alodev.vn/v1/leads
HeaderAuthorization: Bearer xxx
HeaderContent-Type: application/json
Body{"name":"Trần Văn A","email":"a@example.com","budget":"30-60tr"}

Từ một dòng lệnh sang mã nguồn bốn ngôn ngữ

Công cụ này hiểu những gì

Lệnh được tách thành từng phần có tính tới dấu nháy và dấu nối dòng, sau đó rút ra phương thức, địa chỉ, danh sách header và phần thân. Các tuỳ chọn được hiểu gồm khai báo phương thức, khai báo header, các dạng gửi dữ liệu thường dùng, tuỳ chọn gửi JSON, và tuỳ chọn xác thực cơ bản vốn được quy đổi thành một header Authorization. Đầu ra là mã tương đương cho fetch trong JavaScript, axios trong Node, thư viện requests trong Python và gói net/http trong Go.

Việc chuyển lệnh sang mã nguồn

Khi tài liệu của một đối tác chỉ đưa ví dụ bằng dòng lệnh mà bạn phải gọi từ trong mã nguồn. Khi bạn chuột phải một yêu cầu trong tab mạng của trình duyệt, chọn sao chép dưới dạng lệnh curl, rồi muốn dựng lại nó thành một bài kiểm thử. Khi chuyển một lệnh nằm trong tập lệnh vận hành sang một dịch vụ có sẵn.

Đọc mã sinh ra

Nếu lệnh có phần dữ liệu mà không khai phương thức, quy ước của curl là chuyển thành POST và công cụ giữ đúng quy ước đó. Header khai kiểu nội dung quyết định phần thân được sinh ra dưới dạng đối tượng JSON hay dưới dạng chuỗi thô, nên hãy kiểm lại header này trước khi tin vào đoạn mã.

Phần lệnh không được dịch

Lệnh sao chép từ trình duyệt thường kéo theo hàng chục header về cookie và về đặc điểm trình duyệt; bê nguyên vào mã nguồn vừa thừa vừa nguy hiểm vì trong đó có thể có phiên đăng nhập của chính bạn. Các tuỳ chọn ít gặp như bỏ kiểm chứng chỉ, nén nội dung hay đính kèm chứng chỉ khách bị bỏ qua thay vì được dịch, nên đoạn mã sinh ra có thể chạy khác lệnh gốc. Dấu nháy đơn nằm trong phần thân JSON dễ làm lệch bước tách chuỗi, gặp trường hợp đó nên bọc phần thân bằng nháy đơn ở ngoài và dùng nháy kép bên trong.

Lệnh của bạn không rời trình duyệt. Việc tách lệnh và sinh mã chạy hoàn toàn trong trình duyệt. Công cụ cũng không thực thi yêu cầu, nên khoá bí mật hay mã thông hành nằm trong lệnh của bạn không được gửi tới đâu cả.

Câu hỏi thường gặp

cURL Converter hỗ trợ những ngôn ngữ nào?

Chuyển một lệnh curl sang bốn dạng: fetch trong JavaScript, axios trong Node, thư viện requests trong Python và gói net/http trong Go.

Vì sao method tự đổi thành POST dù không khai -X?

Đây là quy ước gốc của curl: có phần dữ liệu -d mà không khai method thì mặc định chuyển sang POST, công cụ giữ đúng quy ước đó khi dịch sang code.

Lệnh curl copy từ tab Network của trình duyệt có dùng thẳng được không?

Nên rà lại trước: lệnh copy từ DevTools thường kéo theo hàng chục header cookie và đặc điểm trình duyệt, trong đó có thể có phiên đăng nhập của chính bạn.

Công cụ có thực thi lệnh curl thật không?

Không. Việc tách lệnh và sinh mã chạy hoàn toàn trong trình duyệt, công cụ không gọi request thật nên khoá bí mật trong lệnh không bị gửi đi đâu.

Công cụ liên quan

Xem tất cả công cụ →

Công cụ riêng cho doanh nghiệp