在C#中实现反向代理重定向可以使用HttpWebRequest和HttpWebResponse类来实现。以下是一个简单的示例代码:
using System;
using System.Net;
namespace ReverseProxyExample
{
class Program
{
static void Main(string[] args)
{
string targetUrl = "https://www.example.com";
string proxyUrl = "http://localhost:8080";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(proxyUrl);
request.Method = "GET";
request.Headers.Add("X-Target-Url", targetUrl);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Console.WriteLine("Response from target URL:");
using (var streamReader = new System.IO.StreamReader(response.GetResponseStream()))
{
Console.WriteLine(streamReader.ReadToEnd());
}
response.Close();
}
}
}
在上面的示例中,我们创建了一个HttpWebRequest
对象并指定了代理服务器的地址和目标URL。然后设置请求的方法为GET,并添加了一个自定义的请求头X-Target-Url
来指定目标URL。最后发送请求并获取响应,然后输出响应内容。
需要注意的是,以上代码仅作为示例,实际应用中可能需要处理一些错误和异常,并根据具体情况调整代码逻辑。