Home  >  Article  >  Backend Development  >  How to create a web server in Golang

How to create a web server in Golang

PHPz
PHPzOriginal
2023-03-29 11:30:29819browse

Golang is an open source programming language that is widely used for server-side application development. In the Internet industry, the demand for server-side applications continues to increase, so the demand for Golang is also gradually increasing. This article will introduce how to create a web server in Golang.

First, we need to install Golang. The Golang official website provides installation packages for various operating systems. If you are using Linux or MacOS, you can install them through the package manager. After the installation is complete, we can develop Golang.

Next, we need to create a web server framework. The most commonly used framework in Golang is Gin, which is lightweight, efficient, and easy to use. We can create a simple web server through Gin. The code is as follows:

package main

import (
    "github.com/gin-gonic/gin"
)

func main() {
    router := gin.Default()
    router.GET("/", func(c *gin.Context) {
        c.JSON(200, gin.H{
            "message": "Hello, World!",
        })
    })
    router.Run()
}

The function of this code is to create a default router and send a JSON message to the client when an HTTP GET request is received. We can test our server by running this program locally.

Execute the "go run main.go" command in the command line. We can see that the server is already running on the local address localhost:8080. Enter "http://localhost:8080/" in your browser to see the message returned by our server.

Next, we can add more routes and handlers according to our needs. For example, we can add a route that handles POST requests to receive data from the client. The code is as follows:

func main() {
    router := gin.Default()
    router.GET("/", func(c *gin.Context) {
        c.JSON(200, gin.H{
            "message": "Hello, World!",
        })
    })

    router.POST("/submit", func(c *gin.Context){
      var inputData struct{
        Name string `json:"name"`
        Age int `json:"age"`
      }
      c.Bind(&inputData);
      c.JSON(200, gin.H{
          "name": inputData.Name,
          "age": inputData.Age,
      })
    })
    router.Run()
}

With the above code, we can receive the client's POST request and transfer the data in the request body Parsed into a structure defined in the data structure. The data in this structure is then returned to the client in JSON format.

To sum up, through the Golang and Gin framework, we can quickly build a web server to process the client's request and respond to the client. With more routes and functions, we can create a more complete web application.

The above is the detailed content of How to create a web server in Golang. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn