如何将HttpContext重定向到代理

时间:2013-10-28 17:47:20

标签: c# javascript redirect httphandler ashx

我正在通过javascript调用twitter API 1.1,这需要通过代理来执行此项目的每个其他调用。重定向到代理服务器当前由服务器端通用Web处理程序(ashx)提供:

public void ProcessRequest(HttpContext context)  

来自js的任何调用首先进入处理程序,处理程序将此请求与代理凭据一起传递给代理。到目前为止,这仅用于忽略标头的简单调用,因此从HttpContext uri创建新的WebRequest很容易。

    WebRequest req = WebRequest.Create(new Uri(uri));
    req.Proxy = new WebProxy(proxy);  
    req.Proxy.Credentials = new NetworkCredential(credentials);

使用OAuth我需要标头,所以我试图找到一种简单的方法,如何将传入的请求以HttpRequest的形式重定向到代理,并仅附加代理凭证,而无需手动将标头移动到新的WebRequest。我尝试了很少的方法,例如context.Server.TransferRequest(uri,true);,但是我找不到如何添加代理凭据的方法。将标题移动到新请求也是不愉快的任务。

我哪里出错,这个任务听起来太简单了,但我找不到合适的解决方案?

0 个答案:

没有答案