Question

Je consommais un service Web dans l'application .NET avec le client WCF.

L'adresse de point de terminaison du service est sur le port 4338, et il est sur HTTPS, sécurisé avec le standard WS-Security.

Alors l'adresse est quelque chose comme:

https://[servername]:4338/[servicename]/

Je n'étais pas en mesure de communiquer au service avec juste l'application en cours d'exécution. il m'a donné l'erreur suivante:

  

Impossible de se connecter à [nomserveur]: 4338   TCP code d'erreur 10060: connexion A   tentative a échoué parce que le connecté   partie n'a pas répondu correctement après une   période de temps, ou établi   connexion a échoué car connecté   hôte n'a pas répondu   [Nomserveur]: 4338

Mais quand je lance Fiddler pour enquêter sur la communication http, l'application commencer à travailler, et je serai en mesure de communiquer au service.

En plus, je veux ajouter que j'ai un autre service sur le même serveur Web qui héberge le premier service et l'adresse de ce deuxième service est hébergé sur le port 8080, et je suis en mesure de communiquer avec lui avec le client WCF ( sans courir Fiddler).

Alors, je googlé et je trouve que cela pourrait être lié aux paramètres proxy. Savez-vous quel est le problème et comment puis-je résoudre?

Merci

Était-ce utile?

La solution

Si vous avez défini proxy dans Internet Explorer, il peut provoquer le problème. Qu'est-ce qui se passe lorsque vous ouvrez https: // [nom_serveur]: 4338 / [servicename] / dans Internet Explorer?

Autres conseils

Fiddler agit comme un serveur proxy Internet. En général, tout symptôme de la forme: « cela fonctionne quand je Fiddler » signifie « ça fonctionne quand il y a un serveur proxy (différent) ».

Vérifiez vos paramètres du serveur proxy. En particulier, comme suggéré EMPI, essayez dans un navigateur. Si cela fonctionne, cela pourrait être dû au fait que le navigateur a les paramètres proxy configurés et que vous ne les avez pas configuré pour WCF.

Merci pour la réponse EMPI. J'ai trouvé la réponse. En fait, dans notre entreprise, nous avons un des paramètres de proxy par « script de configuration automatique » et dépend des sites Web que nous ciblons en interne, le script nous pointer vers le proxy approprié. Donc, à partir du script que je suis l'adresse proxy appropriée. et dans mon application .NET j'ai ajouté ce code WebRequest.DefaultWebProxy = new WebProxy ( " http: //xx.xx.xx.xx: 8080 "); et qui a résolu le problème client Donc WCF n'a pas été détecter le réglage du script automatique. et c'est la raison pour laquelle il a travaillé quand je lance Fiddler, parce que Fiddler écouter la communication http, et l'envoyer à nouveau les paramètres.

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