簡體   English   中英

使用C#Agility Pack從IIS 7中托管的代理服務器應用程序中讀取網站

[英]Reading a website using C# Agility Pack from a proxied server application hosted in IIS 7

我正在創建一個ASP.NET MVC 4網站,該網站從其他網站檢索報價並將其內容匯總到我的網站中。 (基本上,這只是我和一些工作朋友在外出午餐時使用的食物。)

我正在使用Agility Pack來閱讀以下網站:

HtmlWeb webget = new HtmlWeb();
WebProxy wp = new WebProxy(new Uri("http://my-proxy.proxy.proxy.proxy:<port>"), true);
wp.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials;

var doc = webget.Load(url, "GET", wp,
    System.Net.CredentialCache.DefaultNetworkCredentials);

Visual Studio中運行,它可以工作。 但是當我從IIS運行它時,出現以下錯誤:

錯誤:無法檢索到所請求的URL。 嘗試檢索URL時遇到以下錯誤: 訪問被拒絕 訪問控制配置可防止此時允許您的請求。 如果您認為這是不正確的,請與您的服務提供商聯系。 您的緩存管理員是通過代理地址(魷魚)於格林威治標准時間2014年11月25日星期二12:22:30生成的。

請注意,我已經使用ASP.NET v4.0應用程序池配置了Web應用程序。

我的代碼中缺少任何內容嗎?

應用程序池的標識沒有訪問代理服務器所需的權限。

您可以將應用程序池的標識設置為具有權限的用戶,也可以在代碼內設置用戶的標識。

var request = WebRequest.Create("http://foo.bar/file.doc");
request.Credentials = new System.Net.NetworkCredential("username", "password");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM