Question

J'essaie d'utiliser BugzScout de Fogbugz afin de soumettre automatiquement des exceptions d'application non gérées à mon compte Fogbugz on demand. J'ai écrit une classe de wrapper pour cela et tout semble être simplement groovy - sur ma boîte. En testant le même code dans l'environnement de production, derrière un proxy qui requiert une authentification, je n'ai eu que des problèmes.

Je me suis mis au travail pour modifier le code BugzScout afin de l’authentifier auprès du proxy, et après avoir essayé différentes méthodes suggérées via une recherche Google, en ai trouvé une qui fonctionne! Mais maintenant, je reçois une "connexion activement refusée". erreur de Fogbugz elle-même, et je ne sais pas quoi faire.

Voici le code où le BugzScout se connecte via un WebClient .net pour soumettre un nouveau cas, avec mes modifications pour traiter avec notre proxy. Qu'est-ce que je fais pour que Fogbugz refuse ma demande? J'ai supprimé de la procédure tous les codes non liés au client Web pour faciliter la lecture.

public string Submit(){         
        WebClient client = new WebClient();
        WebProxy proxy = new WebProxy();
        proxy.UseDefaultCredentials = true;            
        client.Proxy = proxy;            
        Byte[] response = client.DownloadData(fogBugzUrl);
        string responseText = System.Text.Encoding.UTF8.GetString(response);
        return (responseText == "") ? this.defaultMsg : responseText;
    }

L'URL est correcte et le cas est renseigné correctement - cela a été vérifié.

EDIT: Informations supplémentaires.

  • Utilisation de Fogbugz on Demand.
  • Utiliser le code FogBugz.net dans son intégralité, avec uniquement ces ajouts
       WebProxy proxy = new WebProxy();
       proxy.UseDefaultCredentials = true;            
       client.Proxy = proxy;
Était-ce utile?

La solution

Vous avez trouvé le correctif de Fogbugz: il s’agit du code de réseau approprié pour obtenir l’authentification du proxy et ne pas vous authentifier de manière incorrecte avec Bugzscout.

WebRequest.DefaultWebProxy.Credentials = CredentialCache.DefaultNetworkCredentials;
WebRequest request = WebRequest.Create(fogBugzUrl);
request.ContentType = "application/x-www-form-urlencoded";
request.Method = "POST";
request.Proxy.Credentials = CredentialCache.DefaultNetworkCredentials;     
Stream requestStream = request.GetRequestStream();
requestStream.Write(bytes, 0, bytes.Length);
requestStream.Close();

Autres conseils

Votre fogbugzUrl utilise-t-il l'authentification HTTP de base? Est-ce SSL (hébergé sur demande?)

Le message de connexion activement refusé proviendrait du serveur Web lui-même, pas vraiment de FogBugz.

Pouvez-vous publier le code de statut HTTP?

Une chose à noter si vous utilisez FogBugz On Demand, vous DEVEZ utiliser l’URL https: // (pas l’URL http).

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