منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[VB.NET] مساعدة فى تعديل كود VB.NET Http Web Request تسجيل الدخول الى موقع - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [VB.NET] مساعدة فى تعديل كود VB.NET Http Web Request تسجيل الدخول الى موقع (/showthread.php?tid=14885)



مساعدة فى تعديل كود VB.NET Http Web Request تسجيل الدخول الى موقع - الماجيك مسعد - 25-02-16

السلام عليكم

عجبنى جدا Http Web Request

اكتر من ال web browser

وبحاول فهمها والتعمق فيها

المهم

حاولت عمل تسجيل الدخول الى الفيس بوك

الكود المستخدم

كود :
Dim cookieContainer As New CookieContainer()
   Dim cookies As New CookieCollection()

   Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles Button1.Click
       Dim getUrl As String = "https://www.facebook.com/login.php?login_attempt=1"
       Dim postData As String = [String].Format("email={0}&pass={1}", "ايميل", "باسورد")
       Dim getRequest As HttpWebRequest = DirectCast(WebRequest.Create(getUrl), HttpWebRequest)
       getRequest.CookieContainer = New CookieContainer()
       getRequest.CookieContainer.Add(cookies)
       'recover cookies First request
       getRequest.Method = WebRequestMethods.Http.Post
       getRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2"
       getRequest.AllowWriteStreamBuffering = True
       getRequest.ProtocolVersion = HttpVersion.Version11
       getRequest.AllowAutoRedirect = True
       getRequest.ContentType = "application/x-www-form-urlencoded"

       Dim byteArray As Byte() = Encoding.ASCII.GetBytes(postData)
       getRequest.ContentLength = byteArray.Length
       Dim newStream As Stream = getRequest.GetRequestStream()
       'open connection
       newStream.Write(byteArray, 0, byteArray.Length)
       ' Send the data.
       newStream.Close()

       Dim getResponse As HttpWebResponse = DirectCast(getRequest.GetResponse(), HttpWebResponse)
       Using sr As New StreamReader(getResponse.GetResponseStream())
           Dim sourceCode As String = sr.ReadToEnd()
           'MsgBox(sourceCode)
           RichTextBox1.Text = sourceCode
       End Using

وكانت النتيجة

http://pastebin.com/raw/YhBSMrzb

ياترى سبب المشكلة ايه وايه حلها؟



RE: مساعدة فى تعديل كود VB.NET Http Web Request تسجيل الدخول الى موقع - الماجيك مسعد - 25-02-16

شكرا لكم

وجدت الحل
كود Visual Basic

Try
Dim container As ************************Container = Nothing
Dim s As String = "&email=email&pass=pass"
Dim mycontainer2 As New ************************Container()
Dim bytes As Byte() = New UTF8Encoding().GetBytes(s)
Dim request As HttpWebRequest = DirectCast(WebRequest.Create("https://m.facebook.com/login.php"), HttpWebRequest)
request.Method = "POST"
request.KeepAlive = True
request.************************Container = mycontainer2
request.ContentType = "application/x-www-form-urlencoded"
request.Referer = "https://m.facebook.com"
request.UserAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2"
request.ContentLength = bytes.Length
request.GetRequestStream().Write(bytes, 0, bytes.Length)
Dim response As HttpWebResponse = Nothing
response = DirectCast(request.GetResponse(), HttpWebResponse)
mycontainer2.Add(response.************************s)
container = mycontainer2
Dim str2 As String = New StreamReader(response.GetResponseStream()).ReadToEnd()
RichTextBox1.Text = str2
WebBrowser1.DocumentText = str2
'MessageBox.Show("done")
Catch ex As Exception
MsgBox(ex.Message)
End Try