ออบเจ็กต์ HttpRequest
อ่านเมธอด เส้นทาง ข้อมูล GET และ POST
ออบเจ็กต์ HttpRequest เป็นบทเรียน Django Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Django Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Django Academy มีบทเรียนทั้งหมด 4 บทเรียน
ทำความรู้จักออบเจ็กต์คำขอ
Django จะสร้าง HttpRequest สำหรับทุกการเข้าชม และส่งให้มุมมองของคุณเป็นอาร์กิวเมนต์แรก โดยมักตั้งชื่อว่า request 📨
def view(request):
return HttpResponse("ok")เมธอด HTTP
ตรวจสอบ request.method เพื่อดูว่าหน้านี้ถูกเรียกขออย่างไร ค่านี้เป็นสตริง เช่น GET เมื่ออ่านข้อมูล หรือ POST เมื่อส่งข้อมูล
if request.method == 'POST':
save_it()เส้นทางที่ร้องขอ
ใช้ request.path เพื่ออ่านเส้นทาง URL ที่ผู้ใช้ร้องขอ เช่น /blog/ ซึ่งมีประโยชน์สำหรับการบันทึกเหตุการณ์และการแยกแขนงการทำงาน
current = request.path # "/blog/"ข้อมูลสตริงคำค้นหา
request.GET เก็บค่าจากสตริงคำค้นหาใน URL สำหรับลิงก์ไปยัง ?q=django, request.GET จะอ่านค่า q ให้คุณ
term = request.GET.get('q', '')ข้อมูลการส่งแบบฟอร์ม
request.POST เก็บข้อมูลที่ส่งมาจากแบบฟอร์ม คุณสามารถดึงช่องข้อมูลด้วยชื่อของช่องนั้นได้ เช่นเดียวกับการอ่านค่าจากพจนานุกรม
name = request.POST.get('name')ค่าเริ่มต้นที่ปลอดภัยด้วย get
ใช้ .get() กับ request.GET หรือ POST เสมอ เมธอดนี้จะส่งคืนค่าเริ่มต้นแทนการทำงานล้มเหลวเมื่อไม่พบคีย์ในข้อมูล
page = request.GET.get('page', 1)อ่านส่วนหัวของคำขอ
ออบเจ็กต์ request.headers ช่วยให้คุณอ่านส่วนหัว HTTP ขาเข้า เช่น User-Agent หรือ Accept ตามชื่อของส่วนหัวได้
agent = request.headers.get('User-Agent')ผู้ใช้ที่เข้าสู่ระบบ
Django จะแนบ request.user เพื่อให้มุมมองของคุณทราบว่าใครกำลังเข้าชม ค่านี้อาจเป็นผู้ใช้ที่ผ่านการยืนยันตัวตนแล้วหรือผู้ใช้ที่ไม่ระบุตัวตน
if request.user.is_authenticated:
greet()คุกกี้ในคำขอ
อ่านคุกกี้ที่จัดเก็บไว้ผ่าน request.COOKIES ซึ่งเป็นพจนานุกรมอย่างง่ายของชื่อและค่าที่เบราว์เซอร์ส่งมาด้วย
theme = request.COOKIES.get('theme')สถานะเซสชัน
ออบเจ็กต์ request.session จะเก็บข้อมูลข้ามคำขอสำหรับผู้เข้าชมหนึ่งราย เหมาะสำหรับตะกร้าสินค้าหรือการค้นหาล่าสุด
request.session['count'] = 1ไฟล์และการอัปโหลด
เมื่อแบบฟอร์มอัปโหลดไฟล์ ให้ค้นหาไฟล์เหล่านั้นใน request.FILES แต่ละรายการคือไฟล์ที่อัปโหลด ซึ่งคุณสามารถอ่านหรือบันทึกลงดิสก์ได้
upload = request.FILES.get('avatar')ตรวจสอบอย่างรวดเร็ว
Django เก็บข้อมูลจากแบบฟอร์มที่ส่งไว้ที่ใด
ทบทวน: ออบเจ็กต์เดียวรวมทุกอย่าง
HttpRequest รวมเมธอด เส้นทาง GET, POST, ส่วนหัว ผู้ใช้ และข้อมูลอื่น ๆ ไว้ด้วยกัน อ่านออบเจ็กต์นี้เพื่อทำความเข้าใจทุกการเข้าชม 🧰
เรียนรู้ Python ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 30
- บทเรียน
- 120
คำถามที่พบบ่อย
บทเรียน “ออบเจ็กต์ HttpRequest” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ออบเจ็กต์ HttpRequest” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Django Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Django Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ออบเจ็กต์ HttpRequest”
อ่านเมธอด เส้นทาง ข้อมูล GET และ POST คุณปฏิบัติ Django Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Django Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Django Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “ออบเจ็กต์ HttpRequest” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Django Academy นี้ได้ไหม
ได้ บทเรียน Django Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- คำขอไปถึงวิวของคุณได้อย่างไร
- ออบเจ็กต์ HttpRequest
- ส่งคืน HttpResponse
- รหัสสถานะและคลาสย่อยของ HttpResponse