Maison > Article > développement back-end > Un article analysant comment déterminer si une requête est http ou https in go
Cet article vous apporte des connaissances pertinentes sur go. Il explique principalement comment déterminer si la requête est http ou https en golang (utilisée pour obtenir l'adresse d'accès actuelle). Les amis intéressés devraient y jeter un œil. vous sera utile. Tout le monde est utile.
Déterminez si la demande est http ou https en golang - utilisé pour obtenir l'adresse d'accès actuelle
Développeur indépendant indépendant, le journal de développement du système de service client en ligne
Aujourd'hui, une configuration a été ajoutée au service client système pour configurer le WeChat interne de l'entreprise. Le webhook du robot de notification de groupe, lorsque de nouveaux messages arrivent, appelle le webhook et le transmet au groupe WeChat de l'entreprise. Le contenu des nouveaux messages prend en charge le markdown et peut apporter des liens. Si vous souhaitez apporter le lien de l'URL actuelle, vous pouvez cliquer directement pour répondre au message. Ce qui suit est un résumé des points de connaissances techniques impliqués.
Si un proxy inverse tel que nginx n'est pas utilisé
Vous pouvez directement utiliser le code suivant pour confirmer Le champ TLS de la structure http.Request détermine si la requête utilise le protocole HTTPS. Si ce champ n'est pas nul, cela signifie que la requête utilise le protocole HTTPS ; sinon, cela signifie que la requête utilise le protocole HTTP
package main import ( "fmt" "net/http" ) func handler(w http.ResponseWriter, r *http.Request) { if r.TLS != nil { fmt.Println("HTTPS request") } else { fmt.Println("HTTP request") } } func main() { http.HandleFunc("/", handler) http.ListenAndServe(":8080", nil) }
Après être passé par un proxy inverse
Le code ci-dessus est invalide, vous pouvez utiliser la méthode suivante
Si vous utilisez Si vous disposez d'un proxy inverse nginx, vous devez vous assurer que le paramètre d'en-tête suivant
location / { proxy_pass http://your_upstream_server; proxy_set_header X-Forwarded-Proto $scheme; }
【Recommandation associée :
Tutoriel vidéo Go】
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!