Domanda

OK gente .. ecco l'affare ->

Ho consumato un servizio web nella mia app console e sono in grado di richiamare con successo lo stesso quando è in esecuzione dalla mia macchina locale.

Brews di problemi quando distributo l'app sulla mia casella Win 2k8. Sono arrivato prima -> il nome remoto non è stato possibile risolvere: 'www.www.net' -> E così ho aggiunto un Webproxy e ho agganciato alla proprietà .proxy del web-Servizio.

L'errore successivo che ho eseguito è -> La richiesta non è riuscita con lo stato HTTP 407: AuthenticationRaqued .E io sono in perdita di idee per risolvere lo stesso.

Ho usato -> .proxy.credentials= system.net.credentialCache.DefaultCredentials;e hanno anche definito esplicitamente crediti proxy -> Nome utente, password, dominio -> Ma senza inutilizzazione

Il servizio Web funziona bene quando si accede a un browser dall'interno del server.

Qualsiasi aiuto sarebbe molto apprezzato.

Grazie per il tuo tempo.

RGDS,

È stato utile?

Soluzione 2

ok .. ecco cosa ha capito finalmente ->

Continua con i ragazzi NOC (rete) - e a loro volta accese un accesso basato su IP esplicito alle richieste / risposta a / dal server.

si traduce in una violazione della sicurezza - beh, non sono sicuro.

RGDS,

Altri suggerimenti

Sei dietro un prossisterver? Il tuo browser ha configurato un server proxy? 407 significa "Autenticazione proxy richiesta", quindi è necessario fornire credenziali con le quali è possibile autenticare sul server proxy. La mia prima ipotesi è che hai bisogno di qualcosa di simile.

  var credentials = new NetworkCredential("username", "password", "domain");
  WebProxy proxy = new WebProxy("YourProxyServerUri", true) { Credentials = credentials };
.

E quindi è necessario utilizzare l'oggetto proxy come server proxy per il tuo WebService.

È inoltre possibile utilizzare il server proxy configurato sistemi:

  WebProxy myProxy = (WebProxy) System.Net.HttpWebRequest.GetSystemWebProxy();
.

o potresti persino configurarlo in Web.config (ma penso che non sia possibile fornire credenziali qui:

 <system.net> 
      <defaultProxy useDefaultCredentials="true"> 
         <proxy usesystemdefault="False" proxyaddress="YourProxyServerUri"                
          bypassonlocal="True" /> 
      </defaultProxy> 
 </system.net>
.

Se tutto funziona bene, potresti voler fornire un modo per configurare i proxiserver e le credenziali in fase di runtime, dall'esterno del codice. Altrimenti devi sempre ricompilare le cose se qualcosa nel tuo ambiente di produzione o nella posizione cambia. Puoi inserire questo nella sezione AppSetStings in Web.config, in un database, app.config ecc.

Assicurati anche di fornire il numero di porta giusto nelle tue impostazioni (ad esempio 192.168.1.100:8888)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top