Flask Academy · Pelajaran

Konteks Aplikasi berbanding Konteks Permintaan

Dua konteks dan perkara yang hidup dalam setiap satunya.

Pelajaran 1 daripada 413 langkah

Konteks Aplikasi berbanding Konteks Permintaan ialah pelajaran Flask Academy percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Flask Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Flask Academy merangkumi sejumlah 4 pelajaran.

Dua Jenis Konteks

Flask menjalankan kod anda dalam context, iaitu ruang sementara yang menyimpan data yang diperlukan oleh paparan anda. Terdapat dua jenis: konteks aplikasi dan konteks permintaan.

Konteks Aplikasi

application context menjejaki aplikasi yang sedang aktif. Konteks ini wujud setiap kali Flask melakukan kerja, termasuk di luar permintaan web sebenar.

Konteks Permintaan

request context membungkus satu permintaan masuk. Konteks ini menyimpan URL, pengepala dan data borang untuk pelawat itu sahaja.

Permintaan Turut Menolak Aplikasi

Apabila permintaan tiba, Flask menolak konteks permintaan dan app context turut serta secara automatik. Jadi, dalam paparan, kedua-duanya sentiasa aktif.

Siapa yang Hidup dalam Konteks Aplikasi

Konteks aplikasi memberikan anda current_app dan objek g. Gunakannya untuk konfigurasi, pemegang pangkalan data dan data perkongsian lain mengikut permintaan.

from flask import current_app
print(current_app.name)

Siapa yang Hidup dalam Konteks Permintaan

Konteks permintaan memberikan anda request dan sesi. Kedua-duanya menerangkan pelawat: laluannya, rentetan pertanyaan, borang yang dihantar dan kukinya.

from flask import request
path = request.path

Mengapa Asingkan Kedua-duanya?

Pengasingan konteks bermaksud kerja pada peringkat aplikasi, seperti skrip permulaan, boleh menggunakan current_app tanpa berpura-pura bahawa permintaan web palsu wujud.

Di Luar Sebarang Konteks

Sentuh request tanpa konteks aktif dan Flask akan mencetuskan ralat masa jalan. Proksi itu belum mempunyai sasaran sebenar.

Konteks Disusun Bertingkat

Flask menyimpan konteks pada stack. Setiap konteks ditolak apabila kerja bermula dan dikeluarkan apabila kerja tamat, supaya data yang betul sentiasa berada di atas.

Jangka Hayat Konteks

Konteks permintaan hanya hidup untuk satu permintaan itu. Setelah response dihantar, Flask mengeluarkan kedua-dua konteks dan konteks tersebut lenyap.

Model Mental

Fikirkan begini: app context menjawab aplikasi yang mana, manakala konteks permintaan menjawab pelawat yang mana. Dalam paparan, kedua-duanya wujud serentak.

Semakan Pantas

Mari kita bezakan kedua-dua konteks ini.

Ringkasan

Dua ruang, dua tugas: app context menyatakan aplikasi yang mana, manakala konteks permintaan menyatakan pelawat yang mana. Satu permintaan menolak kedua-duanya, jadi paparan sentiasa mempunyai kedua-duanya. 🎉

Percuma untuk bermula

Pelajari Python dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
30
Pelajaran
120

Soalan Lazim

Adakah pelajaran “Konteks Aplikasi berbanding Konteks Permintaan” percuma?

Ya — teks penuh “Konteks Aplikasi berbanding Konteks Permintaan” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Flask Academy, tingkat taraf kepada CoddyKit PRO. Kursus Flask Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Konteks Aplikasi berbanding Konteks Permintaan”?

Dua konteks dan perkara yang hidup dalam setiap satunya. Anda berlatih Flask Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Flask Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Flask Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 4.

Berapa lamakah pelajaran “Konteks Aplikasi berbanding Konteks Permintaan” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Flask Academy ini?

Ya. Setiap pelajaran Flask Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Konteks Aplikasi berbanding Konteks Permintaan
  2. current_app dan Objek g
  3. Setempat Konteks dan Keselamatan Utas
  4. Tolak Konteks dalam Skrip dan Shell
← Kembali ke Flask Academy