Я пытаюсь войти на веб-сайт с паролем пользователя и отправить туда некоторые данные с помощью метода отправки httprequest. Вы можете думать об этом веб-сайте как о блоге, который требует входа в систему. И что я хочу сделать, так это сначала войти на этот веб-сайт, затем go в раздел publi sh, написать что-нибудь в текстовом поле на этом веб-сайте и нажать кнопку «Отправить», чтобы опубликовать sh то, что я написал.
К настоящему времени я могу войти на этот веб-сайт с помощью метода http get и взять требуемые значения viewstate, eventValidation и куки из этого ответа метода get и использовать их в postData моего метода post с моим именем пользователя и паролем, тогда я могу войти. Затем я могу go в раздел publi sh с файлами cookie, которые я также могу получить из предыдущего метода get. Но когда я пытаюсь написать что-то в этом разделе и нажимаю publi sh (я использую telerik fiddler для отслеживания трафика сайта c), мне кажется, что мой метод публикации требует двух значений: «RadStyleSheetManager1_TSSM» и «radScriptMananer_TSM». почтовые данные взяты из telerik fiddler:
RadStyleSheetManager1_TSSM=%3BTelerik.Web.UI%2C+Version%3D2013.3.1114.40%2C+Culture%3Dneutral%2C+PublicKeyToken%3D121fae78165ba3d4%3Atr-TR%3A8d3dfe81-f887-4a80-ad14-8e882b52e5e6%3A45085116%3A92753c09%3BTelerik.Web.UI.Skins%2C+Version%3D2013.3.1114.40%2C+Culture%3Dneutral%2C+PublicKeyToken%3D121fae78165ba3d4%3Atr-TR%3Ab4b6f2ef-e084-406b-ab93-e85df8d3c504%3A929e740d%3Abf721433&radScriptMananer_TSM=%3B%3BSystem.Web.Extensions%2C+Version%3D4.0.0.0%2C+Culture%3Dneutral%2C+PublicKeyToken%3D31bf3856ad364e35%3Atr-TR%3Ab7585254-495e-4311-9545-1f910247aca5%3Aea597d4b%3Ab25378d2%3BTelerik.Web.UI%2C+Version%3D2013.3.1114.40%2C+Culture%3Dneutral%2C+PublicKeyToken%3D121fae78165ba3d4%3Atr-TR%3A8d3dfe81-f887-4a80-ad14-8e882b52e5e6%3A16e4e7cd%3Aed16cbdc%3Af7645509%3A88144a7a%3A24ee1bba%3A92fe8ea0%3Af46195d3%3Afa31b949%3A874f8ea2%3A19620875%3A490a9d4e%3Abd8f85e4&__EVENTTARGET=&__EVENTARGUMENT=&__VIEWSTATE=6wx4EYFyJl3ifqKMXnl73eUuSZ5GDUmQeS37%2B0pXuuxST2MQswOtz0TNAdQJAn1EJAVVOpBNwfMw%2Bv9T1h9QV7RP223s%2BKW2V4v7cw5DRjF8dCD6aPRy%2Fc05L%2FN4%2F6fk&__VIEWSTATEGENERATOR=F9DFCEF0&__SCROLLPOSITIONX=0&__SCROLLPOSITIONY=484.5&__VIEWSTATEENCRYPTED=&__EVENTVALIDATION=EoL4Hl1K4OYVfImHw6G258yEia9jidq0Of7D7aKvXV%2BtS%2FfPHY4oLQCLqczmD%2BfNotKYIJEYlbiZKLdoVSZs%2B7289pLFwVx43dXp2rQE5YFx9GEj0zXsDQUVL%2Bl1D%2F9qjX%2F7crYSCD1GO8zOyu6Yc4cIA4LYn2z88CBb0PEsRnLg90mipkZWXlkSMAMBYPC0D1vkop5GTJedn6exYcn52Q%2F%2Fj7%2BI8uVeW3LutytHQJVVqTev0n3gdVV6lc9arNMRpgeKdC8gmRZG8tmgiXqHVL9EHUnwAitWXgXMughl4D3xm%2FWbvZFH1LBtGe2djmpwZIF9NptxOpTRzKCJ18wywKRPdlMiM9Et6XLW5b90nY59qD8rAYJte2lzJ431lc9%2FkG%2Fkt5on%2B9%2FUl406dkabpV8HlPQK3tzfY4jOCxkoRgG7YRursHknTzhCTSXrFRRu3Fm3z0fK54c%2BVSukL68gP7L5tewoAXI4BPhSBpAKxglEBCkYe2vHrKZegarmuiMvL1bd08I5uVbX7o0XHm9lg0b2N2ZmltxxIFWvDzGa5BOIb0eq3Eoa%2FitJY%2BPI%2BfKyjerfU4607yeeGBW3MKk9g1y%2FMqeq0usnuvAj%2FjpDsgjdTLxVitTlxhmm4OleQUugb0AnuLLjquC34qx9YmzTfh3cbeT7G8b8niWM4%2FqOlQn1yYa%2FThr4QTHjORGlX81n6eStkkV5VejLfnuW6DDcN3tmMHPCXdUKy3XkwUvRiDeABv1SnvabWTytF3qmQH9xBfi3neofT%2FfmpFR5WPyXnoBFmGHXWHYAiySvs%2FklNc5NKakr8ncya9CYuuBWbegQolJNonKEtuKwVpPBRtTuufmh9f05IA3NEjYCe2BYvUZOOEZ8z7II1Vj6QpnyrKFzBIWLa4WhxoT7A2loA%2FUpBJoxajq7s8T2SYlO4SUU11ApkmtZNYIqppxaAj9HIyRldWQEpO859UXaXFLZ8jfaQLeD5DR8xSnQcYC5u4SzQBh3lHJP0dL6D4uhdLszF%2Ffs91vsRYwLscAL1W%2FF4B4E0pnQH3eoffoUuBKmfmLohB7TdgZB2j34NDApXamsa5XJtC6ulMPorsOcJc%2Flkguy2Q%3D%3D&ctl00%24PageId=&ctl00%24hIlk=1&ctl00%24lblSayfaSozlesme=&ctl00%24ContentPlaceHolder1%24txtDosyaNoAra=3075924&ctl00%24ContentPlaceHolder1%24ucYSTDosyaBilgileri%24ucFaizHesaplamaTarih%24txtTarih=05.05.2020&ctl00%24ContentPlaceHolder1%24btnYeniNotEkle=Yeni+Not+Ekle&ctl00_MessageWindowManager_ClientState=&ctl00_RadWindowMesajGoster_ClientState=&ctl00_wPrint_ClientState=&ctl00_PrintWindow_ClientState=&ctl00_RadWindowPopup_ClientState=
Как вы можете видеть, почтовые данные слишком длинные, но я думаю, что причина сбоя в том, что я не могу уловить эти значения «RadStyleSheetManager1_TSSM» и «radScriptMananer_TSM». Эти два значения необходимы для отправки некоторых данных с помощью метода отправки, или я делаю что-то еще не так?
Ниже мой основной код и метод http post, используемые в основном коде. Спасибо за вашу помощь.
PS: Я новичок на этом сайте, поэтому, пожалуйста, предупредите меня, если я не смогу сообщить достаточно о своей проблеме. Я действительно хочу достичь этой цели.
ОСНОВНОЙ КОД
string postData2 = "RadStyleSheetManager1_TSSM=%3BTelerik.Web.UI%2C+Version%3D2013.3.1114.40%2C+Culture%3Dneutral%2C+PublicKeyToken%3D121fae78165ba3d4%3Atr-TR%3A8d3dfe81-f887-4a80-ad14-8e882b52e5e6%3A45085116%3A92753c09%3BTelerik.Web.UI.Skins%2C+Version%3D2013.3.1114.40%2C+Culture%3Dneutral%2C+PublicKeyToken%3D121fae78165ba3d4%3Atr-TR%3Ab4b6f2ef-e084-406b-ab93-e85df8d3c504%3A929e740d%3Abf721433&radScriptMananer_TSM=%3B%3BSystem.Web.Extensions%2C+Version%3D4.0.0.0%2C+Culture%3Dneutral%2C+PublicKeyToken%3D31bf3856ad364e35%3Atr-TR%3Ab7585254-495e-4311-9545-1f910247aca5%3Aea597d4b%3Ab25378d2%3BTelerik.Web.UI%2C+Version%3D2013.3.1114.40%2C+Culture%3Dneutral%2C+PublicKeyToken%3D121fae78165ba3d4%3Atr-TR%3A8d3dfe81-f887-4a80-ad14-8e882b52e5e6%3A16e4e7cd%3Aed16cbdc%3Af7645509%3A88144a7a%3A24ee1bba%3A92fe8ea0%3Af46195d3%3Afa31b949%3A874f8ea2%3A19620875%3A490a9d4e%3Abd8f85e4&__EVENTTARGET=&__EVENTARGUMENT=&__LASTFOCUS=&__VIEWSTATE=" + viewState2 + "&__VIEWSTATEGENERATOR="+ viewStateGenerator2 +"&__SCROLLPOSITIONX=0&__SCROLLPOSITIONY=682.5&__VIEWSTATEENCRYPTED=&__EVENTVALIDATION=" + eventValidation2 + "&ctl00%24PageId=&ctl00%24hIlk=1&ctl00%24lblSayfaSozlesme=&ctl00%24ContentPlaceHolder1%24txtDosyaNoAra=2022851&ctl00%24ContentPlaceHolder1%24ucYSTDosyaBilgileri%24ucFaizHesaplamaTarih%24txtTarih=05.05.2020&ctl00%24ContentPlaceHolder1%24ddlMalBilgiTuru=1&ctl00%24ContentPlaceHolder1%24ddlDigerBorclu=0&ctl00%24ContentPlaceHolder1%24txtPlakaNo=deneme&ctl00%24ContentPlaceHolder1%24txtMarka=deneme&ctl00%24ContentPlaceHolder1%24txtModel=deneme&ctl00%24ContentPlaceHolder1%24txtModelYili=2010&ctl00%24ContentPlaceHolder1%24ddlAracTuru=2&ctl00%24ContentPlaceHolder1%24txtAracAciklama=deneme&ctl00%24ContentPlaceHolder1%24btnMalVarlikKaydet=Kaydet&ctl00_MessageWindowManager_ClientState=&ctl00_RadWindowMesajGoster_ClientState=&ctl00_wPrint_ClientState=&ctl00_PrintWindow_ClientState=&ctl00_RadWindowPopup_ClientState=";
string source5 = HttpMethods.Post("https://avukat.ckbogazici.com.tr/YTS/DosyaBilgileri.aspx?DosyaUN=" + ytsNo, "https://avukat.ckbogazici.com.tr/YTS/DosyaBilgileri.aspx?DosyaUN=" + ytsNo, postData2, cookies, "application / x - www - form - urlencoded", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9");
if (source5.Contains("btnNotKaydet"))
{
MessageBox.Show("Submitted succesfully");
}
else
{
MessageBox.Show("Problem!");
}
МЕТОД ПОСТАВКИ
public static string Post(string url, string referer, string postData, CookieContainer cookies, string contentType, string accept)
{
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.Method = "POST";
req.CookieContainer = cookies;
req.Referer = referer;
req.UserAgent = "";
req.ContentType = contentType;
req.Accept = accept;
req.ContentLength = postData.Length;
Stream postStream = req.GetRequestStream();
byte[] postBytes = Encoding.ASCII.GetBytes(postData);
postStream.Write(postBytes, 0, postBytes.Length);
postStream.Dispose();
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
cookies.Add(resp.Cookies);
StreamReader reader = new StreamReader(resp.GetResponseStream());
string src = reader.ReadToEnd();
reader.Dispose();
return (src);
А это исходный код раздела publi sh веб-сайта . Как видите, значения «RadStyleSheetManager1_TSSM» и «radScriptMananer_TSM» пусты, поэтому я не могу их уловить.
<body>
<form method="post" action="./DosyaAra.aspx" onsubmit="javascript:return WebForm_OnSubmit();" id="form1">
<div class="aspNetHidden">
<input type="hidden" name="RadStyleSheetManager1_TSSM" id="RadStyleSheetManager1_TSSM" value="" />
<input type="hidden" name="radScriptMananer_TSM" id="radScriptMananer_TSM" value="" />
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPZwUPOGQ3ZjEzZmZhMzdlMDc3TreYxBcpGwvEYQ+SuTTGuzY9U0wkCd6pJwHYOtNe5Ck=" />
</div>