Avec le développement rapide d'Internet, les exigences en matière de sécurité des réseaux sont de plus en plus élevées. Dans de nombreuses applications, la sécurité est cruciale pour la transmission des données, ce qui nous oblige à prendre certaines mesures pour garantir la sécurité et la stabilité de la transmission des données. Parmi eux, HTTPS est largement utilisé dans diverses applications réseau, et la sécurité et la fiabilité de la transmission des données peuvent être assurées grâce au protocole HTTPS.
Pour utiliser le protocole HTTPS dans Golang, vous devez suivre les étapes suivantes.
Étape 1 : Obtenir un certificat
Dans des circonstances normales, le protocole HTTPS doit obtenir un certificat pour assurer la sécurité de la transmission. Dans Golang, il est très pratique d'utiliser GoCert pour générer des certificats. Il suffit d'utiliser la commande suivante :
go run $(go env GOROOT)/src/crypto/tls/generate_cert.go --host=localhost
La commande ci-dessus générera deux fichiers, server.pem et server.key, qui sont les certificats dont nous avons besoin.
Étape 2 : Configurer le serveur HTTPS
Dans Golang, vous pouvez facilement créer un serveur http à l'aide du package net/http. Si nous voulons prendre en charge le protocole HTTPS, il suffit d'utiliser la méthode ServeTLS dans le package net/http. L'exemple est le suivant :
package main import ( "crypto/tls" "net/http" ) func main() { mux := http.NewServeMux() mux.HandleFunc("/", func(w http.ResponseWriter, req *http.Request) { w.Header().Set("Content-Type", "text/plain") w.Write([]byte("This is an example HTTPS server. ")) }) // load keys and certificate from server.pem and server.key server := &http.Server{Addr: ":8080", Handler: mux, TLSConfig: &tls.Config{ MinVersion: tls.VersionTLS12, }} server.ListenAndServeTLS("server.pem", "server.key") }
Le code ci-dessus démarrera un serveur HTTPS pour écouter le port 8080, et le la requête surveillée renverra une simple chaîne. Il convient de noter que nous avons spécifié la version du protocole comme TLS1.2 dans TLSConfig.
Étape 3 : Envoyer une demande via HTTPS
Dans Golang, envoyer une demande via HTTPS est également très simple. Il suffit d'utiliser la méthode Get ou Post dans le package net/http et de spécifier l'URL à demander. L'exemple est le suivant :
client := &http.Client{} resp, err := client.Get("https://example.com")
Le code ci-dessus créera un client HTTP et enverra une requête HTTPS GET à la cible. adresse et renvoie les informations de réponse du serveur. Il est à noter qu'avant d'envoyer une requête HTTPS, nous devons créer une configuration tls.Config pour le client et transmettre la configuration à l'attribut Transport. L'exemple est le suivant :
httpClient := &http.Client{ Transport: &http.Transport{ TLSClientConfig: &tls.Config{InsecureSkipVerify: true}, }, }
L'attribut InsecureSkipVerify est vrai pour ignorer la vérification du. vérification du certificat du serveur cible.
Résumé
Dans cet article, nous avons présenté comment utiliser HTTPS dans Golang. Grâce aux étapes ci-dessus, nous pouvons facilement configurer un serveur HTTPS et envoyer des requêtes HTTPS. Il est important de noter que l’utilisation de HTTPS est conçue pour protéger la sécurité de la transmission de nos données, soyez donc prudent lorsque vous l’utilisez.
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!