Maison >développement back-end >C++ >Pourquoi mon téléchargement de fichier WCF 4.0 échoue-t-il avec l'erreur « Aucune connexion n'a pu être établie car la machine cible l'a activement refusée. 127.0.0.1:3446 » ?
Échec du téléchargement du fichier WCF 4.0 : erreur de connexion refusée (127.0.0.1:3446)
Description du problème : Lors de l'utilisation de WCF 4.0 pour le téléchargement de fichiers via le streaming, l'erreur suivante se produit : "La connexion ne peut pas être établie car l'ordinateur cible l'a activement rejetée. 127.0.0.1:3446"
Détails de l'erreur :
Stream serverStream = request.GetRequestStream();
HttpWebRequest
et HttpWebResponse
. Solution :
Le message d'erreur indique que la demande de connexion a été rejetée par l'ordinateur cible. Raisons possibles :
Méthode de test :
Il est recommandé de ne pas tester à partir d'un projet Windows Forms, mais de vérifier la connexion à l'intérieur du service lui-même à l'aide du code suivant :
<code class="language-csharp">string baseAddress = "http://localhost:3446/File/AddStream/stream.txt"; using (HttpClient client = new HttpClient()) { var response = client.GetAsync(baseAddress).Result; if (response.StatusCode == HttpStatusCode.BadRequest) { // 错误处理 } }</code>
Vérifiez à l'aide de netstat :
Pour vérifier que le service écoute sur le bon port, utilisez la commande suivante (en supposant un système Linux) :
<code class="language-bash">netstat -anp | grep 3446</code>
Cela affichera une ligne indiquant si le service écoute sur le port 3446. S'il n'y a aucune sortie, le service n'écoute pas sur ce port.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!