Maison > Article > développement back-end > Golang reçoit une demande d'obtention
La bibliothèque standard du langage Go (Golang) fournit des fonctions de gestion des requêtes HTTP, ce qui rend très simple l'utilisation de Go pour les applications web. Dans cet article, nous verrons comment écrire un serveur HTTP à l'aide de Go pour recevoir des requêtes GET. Nous verrons d’abord comment créer un serveur HTTP à l’aide de Go, puis présenterons les méthodes de gestion des requêtes Get.
Créer un serveur HTTP Go
La bibliothèque standard du langage Go fournit un package appelé "net/http", qui fournit toutes les fonctions nécessaires pour créer un serveur HTTP. Les étapes de base pour créer un serveur HTTP en langage Go sont les suivantes :
Voyons un exemple de code où nous allons créer un simple serveur HTTP qui utilisera le port par défaut 8000 et écoutera sur localhost les requêtes HTTP des clients :
package main import ( "fmt" "net/http" ) func handler(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w, "Hello, World!") } func main() { http.HandleFunc("/", handler) http.ListenAndServe(":8000", nil) }
Dans le code ci-dessus, nous définissons une fonction de gestionnaire handler
est créé, qui envoie simplement le texte "Hello, World au client !" Nous utilisons ensuite la fonction http.HandleFunc
pour associer la fonction de gestionnaire au chemin URL "/". Enfin, nous démarrons le serveur en utilisant la fonction http.ListenAndServe
et écoutons sur le port TCP 8000 sur localhost. handler
,该函数仅向客户端发送文本“Hello, World!”。然后我们使用http.HandleFunc
函数将处理器函数与URL路径“/”关联。最后,我们使用http.ListenAndServe
函数启动服务器,并将其监听在本地主机上的TCP端口8000上。
使用Go处理GET请求
与其他HTTP方法一样,处理GET请求需要编写一个处理器函数,该函数将执行从客户端接收GET请求所需的操作。处理GET请求的基本步骤如下:
让我们看下面的代码,它是handler
函数的更新版本,该函数将接收来自客户端的GET请求,并返回包含查询参数的响应:
func handler(w http.ResponseWriter, r *http.Request) { query := r.URL.Query().Get("query") fmt.Fprintln(w, "GET请求,参数为:", query) }
在上面的代码中,我们从http.Request
对象中检索URL的查询参数,并将其赋值给名为query
Récupérez les paramètres de la requête GET à partir de l'objet de requête.
Effectuez l'action requise et générez une réponse.
Renvoyer la réponse au client.
Regardons le code ci-dessous, qui est une version mise à jour de la fonctionhandler
qui recevra une requête GET du client et renverra une réponse contenant les paramètres de la requête : curl http://localhost:8000/?query=helloDans ce qui précède code , nous récupérons les paramètres de requête de l'URL depuis l'objet
http.Request
et les affectons à une variable nommée query
. Nous utilisons ensuite cette variable pour générer une réponse où nous affichons le texte « GET request with settings : » et les valeurs des paramètres de requête. 🎜🎜Envoyer une requête GET🎜🎜Pour tester notre serveur, vous pouvez utiliser l'outil curl ou un navigateur Web pour envoyer une requête GET. curl est un outil de ligne de commande open source qui peut être utilisé pour envoyer des requêtes aux serveurs HTTP. 🎜🎜Pour envoyer une requête GET à l'aide de curl, ouvrez un terminal et tapez la commande suivante : 🎜GET请求,参数为:hello🎜La commande ci-dessus enverra une requête GET à notre serveur avec le paramètre de requête "hello". Si tout va bien, vous devriez recevoir la réponse suivante sur votre terminal : 🎜rrreee🎜 Cette réponse indique que notre serveur HTTP a reçu avec succès la requête GET du client et a renvoyé une réponse avec les paramètres de la requête. 🎜🎜Conclusion🎜🎜Dans cet article, nous avons vu comment créer un serveur HTTP en utilisant le langage Go, recevoir les requêtes GET des clients et générer des réponses. La gestion des requêtes et des réponses HTTP devient facile grâce aux packages HTTP fournis dans la bibliothèque standard. Les méthodes expliquées dans cet article devraient suffire pour vous permettre de commencer à écrire des applications Web dans 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!