代理返回错误403禁止-c#

代理返回错误403禁止-c#,c#,http,proxy,httpwebrequest,http-status-code-403,C#,Http,Proxy,Httpwebrequest,Http Status Code 403,我正在构建一个代理,我希望它返回一个403禁止,以防请求中的主机出现在“黑主机列表”中 我不知道如何在不发送请求的情况下创建“HttpWebResponse” 并将状态代码更改为403 我应该使用给定的Url创建请求吗 HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); 对这个请求进行一些操作,或者我可以用其他方式来做吗?另外,我可以做哪些操作来获得403响应 谢谢:)我补充道: context.Response.S

我正在构建一个代理,我希望它返回一个
403禁止
,以防请求中的主机出现在“黑主机列表”中

我不知道如何在不发送请求的情况下创建“HttpWebResponse” 并将状态代码更改为403

我应该使用给定的Url创建请求吗

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
对这个请求进行一些操作,或者我可以用其他方式来做吗?另外,我可以做哪些操作来获得403响应

谢谢:)

我补充道:

context.Response.StatusCode = 403; context.Response.Close(); 
在chrome中,我得到一个空页面,不知道为什么)


在Internet Explorer中,我得到默认的403错误。

您只需返回到客户端403状态。如何做到这一点将取决于您从代理用户接收HTTP请求的方式。只需询问服务器是否在黑洞列表中,如果是,则抛出异常或返回任何内容并说“403”。我从对象“HttpListenerContext”(另存为上下文)接收它。我将Url Url=context.Request.RawUrl与黑名单***进行比较,直到这里我实现了除代理服务器以外的所有服务器都需要返回一个“HttpWebResponse”,这是我从“非黑名单URI”中得到的:HttpWebResponse=this.GetResponse(请求);看看这里。