Ceci est un bon tutoriel pour les débutants qui souhaitent se familiariser avec le package GO Net et comment gérer les demandes.
Commencer
Bien que le tutoriel soit très adapté aux débutants, nous vous recommandons d'avoir les bases de travailler avec la langue Go à portée de main.
Comprendre comment travailler avec les forfaits GO est également très bénéfique.
Package de filet Golang
Le package net fait partie de la bibliothèque standard Go. Il est utilisé pour fournir une interface portable pour travailler avec les opérations d'E / S de réseau. Cela inclut les prises de domaine TCP / IP, UDP, DNS et UNIX.
Nous utiliserons ce package pour créer un serveur TCP.
Construire un serveur TCP simple
Laissez maintenant entrer dans le code et apprendre à créer un serveur TCP. Commencez par créer un fichier Go pour écrire votre code:
MKDIR TCP-ServerModifiez le fichier avec votre éditeur de texte de choix et entrez les lignes ci-dessous:
package principalLes lignes ci-dessus définissent le package comme un package autonome et importe les packages requis.
L'étape suivante consiste à définir les paramètres de notre serveur. Nous pouvons les définir comme des variables globales comme:
const (L'étape suivante consiste à écouter les connexions entrantes. Nous pouvons le faire en utilisant le filet.Méthode d'écoute. La syntaxe de la fonction est comme indiqué:
Func Listen (réseau, chaîne d'adresse) (écouteur, erreur)Il prend le type de connexion (tel que TCP, TCP4, TCP6, UNIX ou UNIXPACKET), l'hôte et le port de connexion. La fonction renverra une connexion d'écoute sur l'adresse spécifiée.
Un exemple de code est comme indiqué:
Écoutez, euh: = net.Écouter (type, hôte + ":" + port)Nous vérifions si l'auditeur rencontre des erreurs, si elle est vraie, elle enregistre le message d'erreur et existe avec un code d'état de 1.
Nous devons également fermer l'auditeur après la fin du serveur. Nous pouvons le faire en utilisant le mot-clé de différence et la méthode étroite
écouter.Fermer()L'étape suivante consiste à écouter en continu les connexions. Nous pouvons le faire en utilisant une boucle pour:
pourPour gérer toutes les demandes entrantes, nous pouvons créer une fonction comme:
func hreatheincomingrequest (Conn net.Conn)Dans l'exemple ci-dessus, nous définissons une fonction qui prend uneonn.Conn structure comme paramètre.
Nous définissons ensuite un nouveau tampon pour stocker les données entrantes de la taille 1024. Le bloc suivant lit l'heure actuelle en utilisant l'heure.Package maintenant ().
En utilisant la méthode d'écriture, nous pouvons écrire l'heure et une chaîne au client. Enfin, nous définissons le Conn.Fermer () pour fermer la connexion.
Le code source complet est comme indiqué:
package principalCompiler et exécuter le serveur
Une fois terminé, enregistrez le fichier et exécutez la commande ci-dessous pour compiler l'auditeur dans un binaire:
GO Build Server.allerEnsuite, exécutez le serveur comme:
./serveur.exeLa commande ci-dessus doit exécuter le serveur TCP et nous pouvons y établir des connexions.
Tester le serveur TCP
Pour tester le serveur TCP, vous pouvez utiliser NetCAT à l'aide de la commande:
NC localhost 9001Ensuite, envoyez un message comme:
Salut!Le serveur doit répondre avec un retour en arrière et la date et l'heure actuelles.
Rebonjour!Conclusion
Et avec ça, nous avons conclu notre tutoriel. Ce guide vous présente les bases de travailler avec le package net en créant un serveur TCP.
Merci d'avoir lu!