UTILS.
ทำงานในเบราว์เซอร์ 100%
🌀

ตัวแปลง cURL เป็นโค้ด

วางคำสั่ง curl แล้วได้สนิปเป็ต JavaScript fetch() ที่เทียบเท่า — เมธอด เฮดเดอร์ บอดี และการยืนยันตัวตน

ผลลัพธ์

เกี่ยวกับเครื่องมือนี้

ตัวแปลง cURL เป็นโค้ด เป็นเครื่องมือฟรีที่ทำงานในเบราว์เซอร์ ซึ่งเปลี่ยนคำสั่ง curl เป็นโค้ด JavaScript fetch() ที่เทียบเท่า วางคำสั่งที่คุณคัดลอกมาจากเทอร์มินัล เอกสาร API หรือเครื่องมือนักพัฒนาของเบราว์เซอร์ แล้วมันจะสร้างสนิปเป็ตที่พร้อมรันพร้อม URL เมธอด HTTP เฮดเดอร์ บอดีคำขอ และการยืนยันตัวตนครบถ้วน คำสั่งถูกแยกวิเคราะห์เป็นข้อความเท่านั้น — ไม่เคยถูกรัน — และทุกอย่างเกิดขึ้นในเครื่องในเบราว์เซอร์ของคุณ

ตัวแยกโทเค็นที่เข้าใจเครื่องหมายคำพูดจะแบ่งคำสั่งแบบเดียวกับที่เชลล์ทำ โดยเคารพเครื่องหมายคำพูดเดี่ยวและคู่ การ escape ด้วยแบ็กสแลช และการต่อบรรทัดด้วย \ ดังนั้นคำสั่งหลายบรรทัดและบอดี JSON ในเครื่องหมายคำพูดจึงแยกวิเคราะห์ได้ถูกต้อง จากนั้นมันจับคู่แฟล็กทั่วไป: -X หรือ --request ตั้งเมธอด, -H หรือ --header สร้างออบเจ็กต์เฮดเดอร์, -d และรูปแบบ --data ของมันกลายเป็นบอดีคำขอ (ซึ่งหมายถึง POST), -u หรือ --user ถูกเข้ารหัสเป็นเฮดเดอร์ Basic Authorization, -F หรือ --form ประกอบบอดี FormData และแฟล็กคุกกี้ user-agent และ referer จับคู่กับเฮดเดอร์ของมัน แฟล็กบูลีนอย่าง -L, -k และ -s จะถูกละเว้น

ใช้เพื่อย้ายคำสั่ง curl ที่ใช้งานได้เข้าสคริปต์ Node หรือเบราว์เซอร์ เรียนรู้ว่าคำขอที่มีในเอกสารจับคู่กับ Fetch API อย่างไร หรือสร้างต้นแบบเทียบกับ API อย่างรวดเร็ว เนื่องจากไม่มีการรันและไม่มีการอัปโหลด คุณจึงวางคำสั่งที่มีโทเค็นได้อย่างปลอดภัย — แม้ว่าคุณควรหมุนเปลี่ยนความลับใด ๆ ที่คุณวางลงในเครื่องที่ใช้ร่วมกัน

คำถามที่พบบ่อย

เครื่องมือรันคำสั่ง curl หรือไม่?
ไม่ มันเพียงแยกวิเคราะห์คำสั่งเป็นสตริงด้วยตัวแยกโทเค็นที่เขียนขึ้นเอง และสร้างโค้ด — ไม่เคยส่งคำขอเครือข่ายหรือรันอะไร นั่นหมายความว่าปลอดภัยที่จะวางคำสั่งในเครื่อง แต่ควรระวังข้อมูลรับรองใด ๆ ในนั้นตามปกติ
รองรับแฟล็ก curl ใดบ้าง?
แฟล็กทั่วไป: -X/--request สำหรับเมธอด, -H/--header สำหรับเฮดเดอร์, -d และตระกูล --data-* สำหรับบอดี, -F/--form สำหรับ FormData แบบ multipart, -u/--user สำหรับ Basic auth รวมถึง -b (คุกกี้), -A (user-agent) และ -e (referer) แฟล็กบูลีนอย่าง -L, -k, -s และ --compressed จะถูกรับรู้และข้ามไป
-u user:password ถูกจัดการอย่างไร?
มันถูกเปลี่ยนเป็นเฮดเดอร์ Authorization: Basic ที่มีสตริง user:password เข้ารหัสแบบ Base64 ตรงกับที่ curl ส่ง ค่าที่เข้ารหัสถูกเขียนลงในออบเจ็กต์เฮดเดอร์ที่สร้างขึ้นโดยตรง สนิปเป็ตจึงทำงานได้ทันที
ทำไมคำขอของฉันจึงเป็น POST โดยปริยาย?
curl ใช้ POST โดยอัตโนมัติเมื่อคุณส่งข้อมูลด้วย -d หรือ -F ตัวแปลงจึงทำเช่นเดียวกัน เว้นแต่คุณกำหนดเมธอดชัดเจนด้วย -X จะใช้ GET เมื่อไม่มีบอดีและไม่ได้ระบุเมธอด การแยกวิเคราะห์ทั้งหมดทำงานเป็นส่วนตัวในเบราว์เซอร์ของคุณโดยไม่มีไลบรารีภายนอก

เครื่องมือเพิ่มเติม