Menurut dokumentasinya request.META adalah "kamus Python standar yang berisi semua header HTTP yang tersedia". Jika Anda ingin mendapatkan semua header, Anda dapat mengulangnya melalui kamus.
Bagian mana dari kode Anda untuk melakukan ini bergantung pada kebutuhan Anda. Tempat mana pun yang memiliki akses requestharus melakukannya.
Memperbarui
Saya perlu mengaksesnya di kelas Middleware tetapi ketika saya mengulanginya, saya mendapatkan banyak nilai selain dari header HTTP.
Dari dokumentasi:
Dengan pengecualian CONTENT_LENGTHdan CONTENT_TYPE, seperti yang diberikan di atas, setiap HTTPheader dalam permintaan diubah menjadi METAkunci dengan mengonversi semua karakter menjadi huruf besar, mengganti tanda hubung dengan garis bawah dan menambahkan HTTP_awalan ke nama .
(Penekanan ditambahkan)
Untuk mendapatkan HTTPheader saja, cukup filter dengan kunci yang diawali dengan HTTP_.
Perbarui 2
dapatkah Anda menunjukkan kepada saya bagaimana saya bisa membuat kamus tajuk dengan menyaring semua kunci dari variabel request.META yang dimulai dengan HTTP_ dan menghapus bagian HTTP_ terkemuka.
Tentu. Inilah salah satu cara untuk melakukannya.
import re
regex = re.compile('^HTTP_')
dict((regex.sub('', header), value) for (header, value)
in request.META.items() if header.startswith('HTTP_'))