ano*_*non 2 .net c# login credentials httpwebrequest
我正在使用HttpWebRequest登录页面并获取一些信息.然后,我使用该信息创建一个新的HttpWebRequest以获取更多信息.我不想使用WebClient.
如何将使用第一个HttpWebRequest登录时获得的凭据传递给第二个?
编辑:如果我使用CookieCollection,那么这将返回为空.我只是尝试使用WebClient作为最后的手段,即使它不起作用,第二个请求将我带回登录屏幕.我注意到在WebBrowser中有一个cookie.
在发送之前为每个请求添加CookieContainer.将第一个响应中获得的cookie添加到第二个请求中.假设他们使用cookie进行身份验证,这应该验证第二个请求.
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(urlWithParameters);
request.CookieContainer = new CookieContainer();
HttpWebResponse response = (HttpWebResponse) request.GetResponse();
var cookies = new CookieContainer();
cookies.Add( response.Cookies );
request = (HttpWebRequest)WebRequest.Create(secondUrlWithParameters);
request.CookieContainer = cookies;
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7566 次 |
| 最近记录: |