gpt4 book ai didi

c# - 套接字帮助和建议

转载 作者:行者123 更新时间:2023-11-30 16:29:06 24 4
gpt4 key购买 nike

我正在努力学习如何使用套接字来发出网络请求,但我很难在网上找到任何东西。我发现很多使用套接字的“客户端”->“服务器”教程,但没有任何内容涉及发出网络请求、抓取程序等。

我希望能够使用套接字开发多线程应用程序,因为我听说它们更容易使用。

最佳答案

I'm trying to learn how to use Sockets to make web requests, but I'm struggling to find anything online.

如果您所说的网络请求是指 HTTP 请求,那么使用套接字的级别就太低了。我建议您使用 WebClientWebRequest以此目的。例如,这里是如何向 google.com 发送 HTTP 请求并获取生成的 HTML:

using System;
using System.Net;

class Program
{
static void Main()
{
using (var client = new WebClient())
{
var result = client.DownloadString("http://www.google.com");
Console.WriteLine(result);
}
}
}

更新:

根据评论部分的要求,这里有一个学习使用套接字的示例:

using System;
using System.IO;
using System.Net.Sockets;

class Program
{
static void Main()
{
using (var client = new TcpClient("www.google.com", 80))
using (var stream = client.GetStream())
using (var writer = new StreamWriter(stream))
using (var reader = new StreamReader(stream))
{
writer.Write(
@"GET / HTTP/1.1
Host: www.google.com
Connection: close

");
writer.Flush();
Console.WriteLine(reader.ReadToEnd());
}
}
}

免责声明:绝对不要在任何实际应用程序中编写任何此类代码。

关于c# - 套接字帮助和建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6636764/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com