Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Mengendalikan Garis miring Berkod URL dalam Penghalaan URL?

Bagaimana untuk Mengendalikan Garis miring Berkod URL dalam Penghalaan URL?

DDD
Lepaskan: 2025-01-03 16:25:40
asal
149 orang telah melayarinya

How to Handle URL-Encoded Slashes in URL Routing?

Bekerja dengan Slash Dikodkan URL dalam URL

Dalam penghalaan URL, kadangkala perlu mengendalikan parameter yang mengandungi garis miring. Walau bagaimanapun, pengekodan URL biasanya menggantikan garis miring dengan urutan '/', yang boleh memecahkan padanan laluan.

Masalah:

Apabila menggunakan laluan seperti {controller}/{ action}/{id}, URL dengan garis miring berkod URL (cth., "Home/About/100/200") gagal untuk sepadan dengan laluan.

Penyelesaian 1: Pengekodan/Penyahkodan URL Tersuai

Penyelesaian pengekodan/penyahkodan URL tersuai boleh dilaksanakan, seperti yang disediakan dalam coretan kod di bawah. Pendekatan ini mengekod nilai parameter menggunakan Base64 dan menambahkan awalan untuk menunjukkan bahawa pengekodan telah digunakan.

Penyelesaian 2: Parameter Wildcard

Jika parameter bermasalah sentiasa yang terakhir satu, anda boleh menggunakan parameter kad bebas {*id} dalam definisi laluan. Ini membenarkan berbilang segmen dalam parameter, termasuk garis miring.

Pertimbangan Lain:

  • Aksara ruang ( ) juga harus dikodkan URL dengan betul.
  • Pengekodan Base64 mungkin menjadikan URL tidak menarik secara visual.
  • Pendekatan alternatif ialah untuk menyimpan rentetan pra-format untuk setiap item dan menggunakan lajur "URL" yang berasingan dalam pangkalan data. Ini mengelakkan keperluan untuk penyahkodan dan memastikan ketekalan data.

Atas ialah kandungan terperinci Bagaimana untuk Mengendalikan Garis miring Berkod URL dalam Penghalaan URL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan