Chcem urobiť jednoduché prihlásenie do systémov s airOS. Autentifikácia prebieha s Multipart Media Encapsulation... (napríklad táto: http://87.249.150.202/login.cgi)
Zatiaľ som si napísal kód:
Kód: Vybrať všetko
HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(strUrl);
req.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
req.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0.1) Gecko/20100101 Firefox/10.0.1";
req.Method = "POST";
req.ContentType = "multipart/form-data; boundary=---------------------------256672629917035";
string strPostData = "\r\n-----------------------------256672629917035\r\n" +
"Content-Disposition: form-data; name=\"uri\"\r\n" +
"\r\n" +
"\r\n" +
"-----------------------------256672629917035\r\n" +
"Content-Disposition: form-data; name=\"username\"\r\n" +
"\r\n" +
"meno\r\n" +
"-----------------------------256672629917035\r\n" +
"Content-Disposition: form-data; name=\"password\"\r\n" +
"\r\n" +
"heslo\r\n" +
"-----------------------------256672629917035\r\n" +
"Content-Disposition: form-data; name=\"Submit\"\r\n" +
"\r\n" +
"Login\r\n" +
"-----------------------------256672629917035--\r\n";
byte[] byty = System.Text.Encoding.UTF8.GetBytes(strPostData);
req.ContentLength = byty.Length;
Stream stream = req.GetRequestStream();
stream.Write(byty, 0, byty.Length);
stream.Flush();
stream.Close();
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
StreamReader sr = new StreamReader(resp.GetResponseStream());
Neviete mi poradiť čo robím zle prípadne spôsob ako sa autentifikovať pomocou boundary?
Ďakujem.