Skip to content

Commit

Permalink
random server port
Browse files Browse the repository at this point in the history
  • Loading branch information
login546 committed Aug 29, 2024
1 parent 071b6b4 commit ae770f4
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 3 deletions.
13 changes: 10 additions & 3 deletions cmd/httpgo/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -57,10 +57,17 @@ func main() {
newdir := dir + "/" + *server + "/"
// 取随机字符串作为密码
Spasswd := utils.GenerateRandomString(10)
fmt.Printf("Serving:http://127.0.0.1:%d/%s.html\n", 6231, *server)
fmt.Printf("Serving:http://0.0.0.1:%d/%s.html\n", 6231, *server)

// 获取随机未占用端口
port, err := utils.GetRandomPort()
if err != nil {
log.Fatal(err)
}

fmt.Printf("Serving:http://127.0.0.1:%d/%s.html\n", port, *server)
fmt.Printf("Serving:http://0.0.0.1:%d/%s.html\n", port, *server)
fmt.Printf("UserInfo: admin/%s\n", Spasswd)
err := httpgo.ServeDirectoryWithAuth(newdir, "admin", Spasswd, 6231)
err = httpgo.ServeDirectoryWithAuth(newdir, "admin", Spasswd, port)
if err != nil {
log.Fatal(err)
}
Expand Down
12 changes: 12 additions & 0 deletions pkg/utils/random.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package utils

import (
"math/rand"
"net"
"time"
)

Expand All @@ -20,3 +21,14 @@ func GenerateRandomString(length int) string {

return string(b)
}

func GetRandomPort() (int, error) {
// Listen on a random port
addr, err := net.Listen("tcp", ":0")
if err != nil {
return 0, err
}
defer addr.Close()
port := addr.Addr().(*net.TCPAddr).Port
return port, nil
}

0 comments on commit ae770f4

Please sign in to comment.