Pergunta

Eu tenho uma ação do controlador ASP MVC. Estou tentando fazer um pedido na web

public ActionResult Index()
{
   WebRequest request = HttpWebRequest.Create("http://www.example.com");
   WebResponse response = request.GetResponse();
   string str =  response.ToString();
}`

Eu recebo uma "WebException OccuRent", o nome remoto não pôde ser resolvido: 'www.example.com'

Se eu começar o Fiddler, o WebRequest funciona.

Eu tentei adicionar:

 <system.net>
 <defaultProxy>
   <proxy usesystemdefault ="True" bypassonlocal="True"  />
 </defaultProxy>

para web.config (com e sem hte bypassonlocal) e ainda não funciona.

Alguma sugestão?

Foi útil?

Solução

Tente especificar o servidor proxy explicitamente:

<system.net>
    <defaultProxy>
        <proxy proxyaddress="http://proxy.yourcompany.com:80" />
    </defaultProxy>
</system.net>

Você também pode definir o proxy programaticamente:

request.Proxy = new WebProxy("http://proxy.yourcompany.com:80", true);

Quando você define usesystemdefault para true, o aplicativo usa o proxy definido no Internet Options caixa de diálogo. Quando você implanta seu aplicativo no IIS, ele geralmente é executado sob o Network Service Conta que possui privilégios muito limitados, nem sequer possui nenhuma sessão da GUI, para que não possa inferir o servidor proxy.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top