ASP - en cours d'exécution dans localhost - incapable d'atteindre Internet
-
25-09-2019 - |
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?
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.