0
我正在校园中的一个古老的在线学习系统的移动版本项目。我一直在尝试几个星期来在本网站上刮掉一些东西,但我需要先登录才能得到它。我有搜索任何东西,包括HttpWebRequest, CookiesAwareWebClient, etc
WP8 C#网站刮登录
我的方法到现在为止是:
- 找到“行动”的网址在网站的登录表单
- 发送POST请求到URL
- 收到包含响应Cookie中的
Headers["Set-Cookie"]
- 使用内容的URL(需要首先登录)创建新的
HttpWebRequest
。 - 将set-cookie的标题复制到该请求中。
- 运行它(但失败)
我也有使用CookieAwareWebClient
CookieCollection
尝试,但它没有工作过。
如何正确地做到这一点? HttpWebRequest中Cookie的位置仅在Headers或HTTP Packets中,CookieCollection的位置在哪里? CookieCollection是否包含在下一个请求中?
感谢
我是否执行这样的网络请求? 'loginWebRequest.BeginGetResponse(新的AsyncCallback(ResponseCallback),loginWebRequest);' 它将运行ResponseCallback()函数,做我需要运行 'VAR authRequiredWebRequest = WebRequest.Create(protectedUrl)为HttpWebRequest的; authRequiredWebRequest.CookieContainer = cookieJar;' 里面的ResponseCallback()函数?如果是的话,cookieJar呢? –
@JohanesEffendi - 您可以根据需要执行请求,但您确实需要等到执行第一个请求时才执行第二个请求。由于HttpWebRequest会为你更新,因此你也不需要用'cookieJar'做任何事情。 –