我可以使用webclient登录网站(eaxmple.com)。但是当网站用户很重时它会慢一些。所以我认为要降低水平。
我需要建议在c#中使用tcpclient是好的。我还需要在登录后管理cookie。我试图从msdn学习这个类,但无法理解如何使用tcpclient发布和获取请求。
我试过这个获取请求。但不知道帖子和cookie管理
byte[] buf = new byte[1024];
string header = "GET /?scope=images&nr=1 HTTP/1.1\r\n" +
"Host: www.bing.com\r\n" +
"Connection: keep-alive\r\n" +
"User-Agent: Mozilla/5.0\r\n" +
"\r\n";
var client = new TcpClient();
client.Connect("www.bing.com", 80);
// send request
var stream = client.GetStream();
var streamReader = new StreamReader(stream);
var streamWriter = new StreamWriter(stream);
streamWriter.Write(header);
streamWriter.Flush();
stream.Flush();
// get response
var response1 = streamReader.ReadLine();
请建议并提供一个链接,我可以从此处开始。
答案 0 :(得分:0)
简而言之,要发送POST请求,只需将动词'GET'替换为'POST'即可。要将实际有效负载(如表单数据)添加到请求,请在header
变量的末尾附加第二个换行符,然后在base64格式中附加实际数据。 Cookie被添加为标题。
只需谷歌'POST HTTP格式'并查找示例代码,必须有几十个。 HTTP请求只是一系列字符 - 至少,你可以从它开始。
但是,如果您遇到带宽或服务器负载问题,“向下一级”将无法帮助您。此外,构建功能齐全的HTTP客户端并不容易。很多工作都没有。