Golang 如何构建简单的Web服务器

Golang 如何构建简单的Web服务器

Golang是一种过程式编程语言,适用于构建简单、可靠和高效的软件。

使用Golang创建Web服务器:

初始化一个项目

创建一个带有.go文件的项目文件夹,例如 server.go

目录结构:

Golang 如何构建简单的Web服务器

server.go文件:

package main

import (
    "fmt"
    "log"
    "net/http"
)

func main() {

    // API routes
    http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
        fmt.Fprintf(w, "Hello world from GfG")
    })
    http.HandleFunc("/hi", func(w http.ResponseWriter, r *http.Request) {
        fmt.Fprintf(w, "Hi")
    })

    port := ":5000"
    fmt.Println("Server is running on port" + port)

    // Start server on port specified above
    log.Fatal(http.ListenAndServe(port, nil))
} 

使用以下命令运行服务器(确保您在项目目录中):

go run server.go

注意: 每次更改server.go文件时,您都必须使用Ctrl + C停止服务器并通过同一命令重新启动。

控制台:

Golang 如何构建简单的Web服务器

打开所需的Web浏览器和任何这些URL以验证服务器是否正在运行:

http://localhost:5000/或http://localhost:5000/hi

输出:

Golang 如何构建简单的Web服务器

提供静态文件:

创建一个具有所有静态文件的静态文件夹。例如:

Golang 如何构建简单的Web服务器

示例静态文件:

  • GfG徽标
  • index.html 文件
<html>
  <head>
    <title>Home</title>
  </head>
  <body>
    <h2>Home page</h2>
  </body>
</html>```  

* _about.html_ 文件 ```go <html> <head> <title>About</title> </head> <body> <h2>about page!</h2> </body> </html>```

现在,请编辑 _ **server.go文件**_ : ```go package main import ( "fmt" "log" "net/http" ) func main() { // API routes // Serve来自静态文件夹的文件 http.Handle("/", http.FileServer(http.Dir("./static"))) // Serve api/hi http.HandleFunc("/hi", func(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, "Hi") }) port := ":5000" fmt.Println("Server is running on port" + port) // Start server on port specified above log.Fatal(http.ListenAndServe(port, nil)) }

验证是否提供了静态文件:

Golang 如何构建简单的Web服务器

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程