Apabila menghantar data dalam URL, adalah penting untuk mempertimbangkan langkah keselamatan untuk mengelakkan pengubahan data. Satu amalan biasa ialah mengekod data menggunakan pengekodan Base64. Walau bagaimanapun, persoalan timbul: adakah selamat untuk melepasi rentetan mentah yang dikodkan Base64 dalam parameter GET?
Jawapannya terletak pada pemahaman ciri pengekodan Base64. Walaupun Base64 menggunakan abjad 64 aksara, parameter URL mungkin menyekat aksara tertentu, seperti ' ' dan '/'. Untuk menangani perkara ini, pengekodan Base64 yang diubah suai wujud, seperti yang menggunakan '-', '_' sebagai pengganti untuk aksara terhad.
Untuk memastikan keserasian, adalah disyorkan untuk menggunakan fungsi pembantu tersuai untuk pengekodan dan penyahkodan. Berikut ialah contoh daripada PHP:
def base64_url_encode(input): return strtr(base64.b64encode(input).decode('utf-8'), '+/=', '-_.') def base64_url_decode(input): return base64.b64decode(strtr(input, '-_.', '+/=')).decode('utf-8')
Dengan menggantikan aksara yang terhad dengan yang mesra URL, anda boleh menghantar rentetan yang dikodkan Base64 yang diubah suai dengan selamat dalam parameter GET, meningkatkan keselamatan dan mengekalkan integriti data.
Atas ialah kandungan terperinci Adakah Melepasi Rentetan Dikodkan Raw Base64 dalam Parameter GET Selamat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!