Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Mengesahkan Pengikisan Web dalam C# Menggunakan Permintaan POST dan GET?
Pengesahan Pengikisan Web C#: Panduan Praktikal untuk POS dan DAPATKAN Permintaan
Tapak web yang dilindungi mengikis web memerlukan pengesahan pengguna. Panduan ini memperincikan cara untuk log masuk ke tapak web menggunakan C#, memintas had biasa perpustakaan peringkat tinggi. Kami akan menumpukan pada penggunaan WebRequest
dan WebResponse
untuk kawalan tepat ke atas permintaan HTTP.
Prasyarat:
Langkah Pelaksanaan:
Pengesahan melibatkan dua langkah utama:
Menyiarkan Bukti Kelayakan Log Masuk:
WebRequest
dengan kaedah POST, jenis kandungan ("application/x-www-form-urlencoded") dan panjang data.Mendapatkan Kandungan Dilindungi:
WebRequest
untuk halaman yang dilindungi.StreamReader
untuk mendapatkan dan memproses kod sumber HTML halaman.Contoh Kod:
Contoh ini menunjukkan log masuk dan mendapatkan semula halaman yang dilindungi:
<code class="language-csharp">string loginUrl = "http://www.mmoinn.com/index.do?PageModule=UsersAction&Action=UsersLogin"; string loginParams = string.Format("email_address={0}&password={1}", "your email", "your password"); string cookieHeader; WebRequest loginRequest = WebRequest.Create(loginUrl); loginRequest.ContentType = "application/x-www-form-urlencoded"; loginRequest.Method = "POST"; byte[] data = Encoding.ASCII.GetBytes(loginParams); loginRequest.ContentLength = data.Length; using (Stream requestStream = loginRequest.GetRequestStream()) { requestStream.Write(data, 0, data.Length); } WebResponse loginResponse = loginRequest.GetResponse(); cookieHeader = loginResponse.Headers["Set-cookie"]; string protectedPageUrl = "http://www.mmoinn.com/protected_page.html"; WebRequest protectedRequest = WebRequest.Create(protectedPageUrl); protectedRequest.Headers.Add("Cookie", cookieHeader); WebResponse protectedResponse = protectedRequest.GetResponse(); using (StreamReader reader = new StreamReader(protectedResponse.GetResponseStream())) { string pageSource = reader.ReadToEnd(); // Process the protected page's HTML }</code>
Kod ini menggambarkan proses pengesahan lengkap: menghantar permintaan POST, mendapatkan semula kuki dan menggunakan kuki itu untuk mengakses kandungan yang dilindungi melalui permintaan GET. Ingat untuk menggantikan "your email"
dan "your password"
dengan bukti kelayakan sebenar. Pengendalian ralat (cth., untuk bukti kelayakan yang tidak sah) harus ditambah untuk aplikasi yang mantap.
Atas ialah kandungan terperinci Bagaimana untuk Mengesahkan Pengikisan Web dalam C# Menggunakan Permintaan POST dan GET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!