Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Log Masuk Secara Pemrograman ke Laman Web Menggunakan C#?

Bagaimana untuk Log Masuk Secara Pemrograman ke Laman Web Menggunakan C#?

DDD
DDDasal
2025-01-18 09:36:10375semak imbas

Tulis skrip log masuk tapak web menggunakan C#

Masalah: Pengikis web saya memerlukan pengguna log masuk untuk mengakses kod sumber tertentu di tapak web. Bagaimanakah saya boleh melaksanakan fungsi log masuk dalam program saya untuk memintas sekatan ini?

Jawapan: Untuk log masuk ke tapak web yang ditentukan (mmoinn.com/index.do?PageModule=UsersLogin), anda boleh mengikuti langkah di bawah:

1. Hantar permintaan POST ke borang log masuk

Formatkan bukti kelayakan log masuk anda ke dalam borang POST:

<code class="language-csharp">string formUrl = "http://www.mmoinn.com/index.do?PageModule=UsersAction&Action=UsersLogin";
string formParams = string.Format("email_address={0}&password={1}", "您的邮箱地址", "您的密码");

WebRequest req = WebRequest.Create(formUrl);
req.ContentType = "application/x-www-form-urlencoded";
req.Method = "POST";

byte[] bytes = Encoding.ASCII.GetBytes(formParams);
req.ContentLength = bytes.Length;

using (Stream os = req.GetRequestStream())
{
    os.Write(bytes, 0, bytes.Length);
}

WebResponse resp = req.GetResponse();
string cookieHeader = resp.Headers["Set-cookie"];</code>

2. Dapatkan halaman log masuk

Buat permintaan GET ke halaman yang dikehendaki yang mengandungi pengepala kuki yang anda dapatkan daripada borang log masuk:

<code class="language-csharp">string getUrl = "登录后页面的URL";
WebRequest getRequest = WebRequest.Create(getUrl);
getRequest.Headers.Add("Cookie", cookieHeader);
WebResponse getResponse = getRequest.GetResponse();

using (StreamReader sr = new StreamReader(getResponse.GetResponseStream()))
{
    string pageSource = sr.ReadToEnd();
}</code>

Nota tambahan:

Jika anda ingin mengesahkan respons POST log masuk, anda boleh menambah baris kod berikut:

<code class="language-csharp">using (StreamReader sr = new StreamReader(resp.GetResponseStream()))
{
    string pageSource = sr.ReadToEnd();
}</code>

Semak rentetan pageSource untuk menyemak respons pelayan.

How to Programmatically Log In to a Website Using C#?

Atas ialah kandungan terperinci Bagaimana untuk Log Masuk Secara Pemrograman ke Laman Web Menggunakan C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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