Maison >développement back-end >Golang >Comment configurer correctement l'authentification du proxy HTTP dans Go ?

Comment configurer correctement l'authentification du proxy HTTP dans Go ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-16 03:24:10656parcourir

How to Properly Configure HTTP Proxy Authentication in Go?

Proxy HTTP avec authentification dans Go

La configuration d'un proxy avec authentification pour les requêtes HTTP peut être difficile, en particulier lors de son intégration dans du code tiers existant. Cet article se penche sur un problème spécifique rencontré lors de la tentative d'ajout d'une authentification proxy à une base de code existante.

Énoncé du problème :

L'extrait de code fourni établit un proxy HTTP sans authentification. en utilisant un objet de transport avec la fonction ProxyURL. Cependant, l'ajout de l'en-tête Proxy-Authorization à l'objet de réponse après la requête POST ne parvient pas à authentifier le proxy.

Solution :

Pour résoudre ce problème, spécifiez directement le URL proxy avec les informations d'authentification dans l'objet de transport.

// Create an HTTP client with proxy authentication
client := &http.Client{
  Transport: &http.Transport{
    Proxy: http.ProxyURL(&url.URL{
      Scheme: "http",
      User:   url.UserPassword("username", "password"),
      Host:   "proxy.com:8080",
    }),
  },
}

// Use the client to make requests with proxy authentication
resp, err := client.PostForm(method, params)

Alternativement, l'URL proxy peut également être analysée directement.

// Parse the proxy URL
proxyURL, _ := url.Parse("http://username:password@proxy.com:8080")

// Create an HTTP client with proxy authentication
client := &http.Client{
  Transport: &http.Transport{
    Proxy: http.ProxyURL(proxyURL),
  },
}

// Use the client to make requests with proxy authentication
resp, err := client.PostForm(method, params)

Cette approche garantit que les informations d'identification du proxy sont incorporées dans l'objet de transport, permettant à la requête HTTP POST d'utiliser le proxy authentifié.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn