Hi !
I need to access the HTML content of a page. I know how to do this if the page is public but now i want to access a page that is in a site that requires previous authentication.
What i usually do is going to the login page, write my usernames and password and then submit, and then i have access to www.AddressOfThePageIWantToRead.asp . In the login page there is a form whose action is www.AddressOfThePageIWantToRead.asp and method = POST . The names of the textboxes where i write are "username" and "password".
I'd like to be able to give my username and pwd and write in a string (lcHtml) the content of www.AddressOfThePageIWantToRead.asp .
I found something on the net, that is:
Dim lcUrl As String = "http://www.AddressOfThePageIWantToRead.asp"
Dim loHttp As HttpWebRequest = WebRequest.Create(lcUrl)
Dim lcPostData As String = "Username=" & HttpUtility.UrlEncode("MyUsername") & "&Password=" + HttpUtility.UrlEncode("MyPWD")
loHttp.Method = "POST"
Dim lbPostBuffer As Byte() = System.Text.Encoding.GetEncoding(1252).GetBytes(lcPostData)
loHttp.ContentLength = lbPostBuffer.Length
Dim loPostData As Stream = loHttp.GetRequestStream()
loPostData.Write(lbPostBuffer, 0, lbPostBuffer.Length)
loPostData.Close()
Dim loWebResponse As HttpWebResponse = loHttp.GetResponse()
Dim enc As Encoding = System.Text.Encoding.GetEncoding(1252)
Dim loResponseStream As StreamReader = New StreamReader(loWebResponse.GetResponseStream(), enc)
Dim lcHtml As String = loResponseStream.ReadToEnd()
loWebResponse.Close()
loResponseStream.Close()
the site is actually responding with a page that says : Username and/or pwd uncorrect.
Of course i know my username and pwd ARE correct. so what could be the problem ? the encoding of UrlEncode ? what else ? what am i missing ?
if the complete answer is too long, at least tell me where to find a good tutorial or illuminating post, please !
thanx !
Wentu
I need to access the HTML content of a page. I know how to do this if the page is public but now i want to access a page that is in a site that requires previous authentication.
What i usually do is going to the login page, write my usernames and password and then submit, and then i have access to www.AddressOfThePageIWantToRead.asp . In the login page there is a form whose action is www.AddressOfThePageIWantToRead.asp and method = POST . The names of the textboxes where i write are "username" and "password".
I'd like to be able to give my username and pwd and write in a string (lcHtml) the content of www.AddressOfThePageIWantToRead.asp .
I found something on the net, that is:
Dim lcUrl As String = "http://www.AddressOfThePageIWantToRead.asp"
Dim loHttp As HttpWebRequest = WebRequest.Create(lcUrl)
Dim lcPostData As String = "Username=" & HttpUtility.UrlEncode("MyUsername") & "&Password=" + HttpUtility.UrlEncode("MyPWD")
loHttp.Method = "POST"
Dim lbPostBuffer As Byte() = System.Text.Encoding.GetEncoding(1252).GetBytes(lcPostData)
loHttp.ContentLength = lbPostBuffer.Length
Dim loPostData As Stream = loHttp.GetRequestStream()
loPostData.Write(lbPostBuffer, 0, lbPostBuffer.Length)
loPostData.Close()
Dim loWebResponse As HttpWebResponse = loHttp.GetResponse()
Dim enc As Encoding = System.Text.Encoding.GetEncoding(1252)
Dim loResponseStream As StreamReader = New StreamReader(loWebResponse.GetResponseStream(), enc)
Dim lcHtml As String = loResponseStream.ReadToEnd()
loWebResponse.Close()
loResponseStream.Close()
the site is actually responding with a page that says : Username and/or pwd uncorrect.
Of course i know my username and pwd ARE correct. so what could be the problem ? the encoding of UrlEncode ? what else ? what am i missing ?
if the complete answer is too long, at least tell me where to find a good tutorial or illuminating post, please !
thanx !
Wentu