ลองทำเทคนิคนี้ให้น้อยที่สุด
สมมติว่าคุณกำลังส่งข้อมูลฟอร์ม html ไปยังเซิร์ฟเวอร์ node-js นั่นคือคุณได้ทำการร้องขอไปยังเซิร์ฟเวอร์ ไฟล์เซิร์ฟเวอร์จะได้รับคำขอของคุณภายใต้วัตถุคำขอ ตอนนี้โดยตรรกะถ้าคุณคอนโซลบันทึกวัตถุคำขอนี้ในไฟล์เซิร์ฟเวอร์ของคุณคุณควรเห็นข้อมูลในแบบฟอร์มของคุณบางอย่างที่มันสามารถแยกแล้ว แต่ว้าว! คุณทำไม่ได้จริง!
แล้วข้อมูลของเราอยู่ที่ไหน เราจะดึงมันออกมาได้อย่างไรถ้ามันไม่เพียงอยู่ในคำขอของฉัน
คำอธิบายง่ายๆเกี่ยวกับเรื่องนี้คือ http จะส่งข้อมูลแบบฟอร์มของคุณเป็นบิตและชิ้นส่วนที่มีจุดประสงค์เพื่อประกอบเข้าด้วยกันเมื่อถึงปลายทาง ดังนั้นคุณจะดึงข้อมูลของคุณได้อย่างไร
แต่ทำไมความเจ็บปวดของการแยกข้อมูลของคุณด้วยตนเองทุกครั้งเพื่อแยกชิ้นส่วนและประกอบมัน ใช้สิ่งที่เรียกว่า "body-parser" ซึ่งจะทำเพื่อคุณ
body-parser แยกวิเคราะห์คำขอของคุณและแปลงเป็นรูปแบบที่คุณสามารถดึงข้อมูลที่เกี่ยวข้องที่คุณอาจต้องการได้อย่างง่ายดาย
ตัวอย่างเช่นสมมติว่าคุณมีแบบฟอร์มลงทะเบียนที่ส่วนหน้าของคุณ คุณกำลังกรอกข้อมูลและขอให้เซิร์ฟเวอร์บันทึกรายละเอียดที่อื่น
การแยกชื่อผู้ใช้และรหัสผ่านออกจากคำขอของคุณนั้นง่ายมากหากคุณใช้ตัวแยกวิเคราะห์
var loginDetails = {
username : request.body.username,
password : request.body.password
};
โดยพื้นฐานแล้ว body-parser จะแยกวิเคราะห์คำขอที่เข้ามาของคุณประกอบชิ้นส่วนที่มีข้อมูลแบบฟอร์มของคุณแล้วสร้างวัตถุร่างกายนี้ให้คุณและเติมด้วยข้อมูลแบบฟอร์มของคุณ
req.body