使用Golang的HTTP基本身份验证

How do I implement basic auth with a Golang site? So that when someone visits a page they will be prompted by their browser with a login.

In order to force a user to authenticate/make that basic auth prompt in the users browser appear you send the header WWW-Authenticate : Basic ream="mydomain"

So if you have a http.ResponseWriter called w, you can do

 w.Header().Set("WWW-Authenticate", `Basic realm="mydomain"`)

Which will cause the browser to open the prompt you're referring to.

You could also use Echo's labstack project, which provides Basic Auth middleware:

e.Use(middleware.BasicAuth(func(username, password string, c echo.Context) (bool, error) {
    // check username and password for a match here
}))

Use the code above to protect any route groups with basic authentication.