gpt4 book ai didi

go - echo 框架,在哪一刻降级权限?

转载 作者:行者123 更新时间:2023-12-04 07:32:55 24 4
gpt4 key购买 nike

我用 echo framework用于创建我的 API 服务器。由 发起systemd 并且默认需要 root,以便获取 1024 以下的端口。为了安全起见,我喜欢 降级权限在 echo 框架获取监听端口后我的 go 程序。
我知道如何降级,但是 我找不到合适的事件/回调 ?问题是,echo.Start()echo.StartAutoTLS()别回来。我可以创建一个并行线程并尝试找到我的回显 session 的一些状态值,告诉我端口已打开,但我也找不到这样的状态指示。
如何确保在获取端口后执行一些代码(并确定知道)?
到现在为止,我在服务器创建之前运行了一个并行的 go 线程,然后等待 5 秒钟进行降级。到目前为止它有效,但这是hacky,我不喜欢它:-(

最佳答案

您可以使用 e.ListenerAddr() 检查端口是否打开。
它将返回 nil 直到端口打开。

func degradePrivileges(e *echo.Echo, userName string) { 
for { adr := e.ListenerAddr() if adr != nil {
degradeMe(userName) break
}
time.Sleep(100 * time.Millisecond) }
}

关于go - echo 框架,在哪一刻降级权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67867325/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com