vb.net http发布cookies错误

时间:2013-02-27 12:47:09

标签: .net vb.net http post cookies

我知道这个问题之前被问过,我正在寻找答案,但我是Post的新手,我无法弄清楚什么是错的,在某些网站上它工作正常但是当我用它来访问大学的内部网时我一直在:

  

需要使用HTTP cookie来验证授权信息

请告诉我我哪里做错了,这是我的代码:

        Dim cookies = New  CookieContainer()  
        ServicePointManager.Expect100Continue = False
        Dim request As HttpWebRequest = DirectCast(WebRequest.Create("http://banapp01*******/PROD/twbkwbis.P_ValLogin"), HttpWebRequest)
        request.CookieContainer = cookies
        'Dim response As HttpWebResponse = DirectCast(request.GetResponse(), HttpWebResponse)
        'Dim cookieCount As Integer = cookies.Count
        request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:19.0) Gecko/20100101 Firefox/19.0"
        request.Method = "POST"
        request.Referer = "http://banapp01.*******/PROD/twbkwbis.P_WWWLogin"
        request.ContentType = "application/x-www-form-urlencoded"
        Using requestStream = request.GetRequestStream()
            Using writer = New StreamWriter(requestStream)
                writer.Write("sid=" & TextBox1.Text & "&PIN=" & TextBox2.Text)
            End Using
        End Using

        Using responseStream = request.GetResponse().GetResponseStream()
            Using reader = New StreamReader(responseStream)
                Dim result = reader.ReadToEnd()
                RichTextBox1.Text = result
            End Using
        End Using

任何人都可以告诉我有什么问题吗?或者我需要如何正确地工作? 我一直在研究Post和Get 5天才能做到并且仍然失败! 我只是想让我的项目变得完美:S

1 个答案:

答案 0 :(得分:0)

我猜你还没有发出一个返回cookie的请求来存储在CookieContainer中。

是否需要首先调用某种登录URL才能分配身份验证Cookie?