Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Mengesahkan URL HTTP dan HTTPS dalam Input?
Pengesahan Input Teguh untuk URL HTTP dan HTTPS
Kaedah pengesahan URL biasa seperti Uri.IsWellFormedUriString
dan Uri.TryCreate
kadangkala gagal membezakan URL HTTP yang sah daripada laluan fail lain dengan pasti. Ini memberikan cabaran yang ketara apabila mengesahkan input pengguna di mana hanya HTTP atau HTTPS URL boleh diterima.
Pendekatan Lebih Tepat: Menggabungkan Pengesahan URI dan Semakan Skim
Penyelesaian yang lebih mantap melibatkan penggabungan pengesahan URI struktur dengan pemeriksaan khusus untuk skema HTTP atau HTTPS:
<code class="language-csharp">Uri uriResult; bool isValidHttpUrl = Uri.TryCreate(uriString, UriKind.Absolute, out uriResult) && uriResult.Scheme == Uri.UriSchemeHttp;</code>
Kod ini mula-mula menggunakan Uri.TryCreate
untuk mengesahkan rentetan input (uriString
) sebagai URI yang terbentuk dengan baik. Jika berjaya, ia kemudian menyemak sama ada skema URI ialah Uri.UriSchemeHttp
.
Melanjutkan Pengesahan untuk Memasukkan HTTPS
Untuk memasukkan URL HTTPS, hanya kembangkan perbandingan skema:
<code class="language-csharp">Uri uriResult; bool isValidHttpOrHttpsUrl = Uri.TryCreate(uriString, UriKind.Absolute, out uriResult) && (uriResult.Scheme == Uri.UriSchemeHttp || uriResult.Scheme == Uri.UriSchemeHttps);</code>
Semakan dipertingkat ini menerima kedua-dua protokol HTTP dan HTTPS, memberikan pengesahan URL yang komprehensif untuk input anda.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengesahkan URL HTTP dan HTTPS dalam Input?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!