Question

J'ai une action du contrôleur MVC ASP. Je suis en train de faire une demande de web

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

Je reçois un « WebException est survenue » ne pouvait pas être résolu à distance le nom: « www.example.com »

Si je commence Fiddler, puis les travaux de WebRequest.

J'ai essayé d'ajouter:

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

à Web.config (avec et sans hte bypassonlocal) et il ne fonctionne toujours pas.

Toutes les suggestions?

Était-ce utile?

La solution

Essayez spécifiant explicitement le serveur proxy:

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

Vous pouvez également définir le proxy programatically:

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

Lorsque vous définissez usesystemdefault à true, l'application utilise le proxy défini dans la boîte de dialogue Internet Options. Lorsque vous déployez votre application dans IIS il exécute habituellement sous le compte Network Service qui a très privilèges limités, il n'a pas même pas de session de l'interface graphique de sorte qu'il ne peut pas déduire le serveur proxy.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top