fondamentalement, cette erreur ne se produit que dans CURL
curl: (56) Recv failure: Connection reset by peer
Mais quand je visite directement le lien directement sur mon navigateur, ça marche!
Quelles sont vos recommandations pour résoudre celui-ci ou la cause de cette erreur?
Remarque: le serveur est codé dans ASP et il ne se produit que lors d'un seul appel d'API.
Je me souviens d'avoir affronté le même problème il y a longtemps. Bien que je ne me souvienne pas de ce qui a exactement réglé le problème, je me souviens de ce qui suit:
J'essayais de passer directement les paramètres de requête dans l'URL et j'ai essayé de passer par la méthode POST
J'ai essayé d'utiliser un proxy avec curl pour voir si j'étais éventuellement bloqué par l'autre serveur
Je crois que j'ai également demandé à mon hôte d'examiner la situation et ils ont apporté des modifications aux paramètres d'Apache.
J'ai résolu ce problème en supprimant les caractères d'espacement de l'URL. Dans mon cas, c’était le serveur proxy qui s’est trompé, pas le serveur Web.
En PHP:
curl_setopt($ch, CURLOPT_URL, trim($url));
J'ai eu un problème similaire avec ce code:
$url = "http://xxx.xxx.xxx.xxx";
$ch = curl_init();
curl_setopt($ch, CURLOPT_PORT, 44455); //Set the port to connect to
//curl_setopt($ch, CURLOPT_RETURNTRANSFER, 44455);
curl_setopt($ch, CURLOPT_URL, $url);
echo $xml = curl_exec($ch);
if(curl_errno($ch))
{
echo 'error:' . curl_error($ch);
}
curl_close($ch);
Je l'ai résolu en désactivant ceci:
//curl_setopt($ch, CURLOPT_RETURNTRANSFER, 44455);