我正在尝试将运行小型golang应用程序的服务器移植到AWS Lambda。我对golang并不十分熟悉,我只是按照仓库中的说明将其部署到服务器上。
它使用net / http运行服务器,main.go如下:
func main() {
r := new(route.Router)
r.HandleFunc("/squares", squares.Random)
// ... more Handlers
log.Println("Listening on " + os.Getenv("PORT"))
err := http.ListenAndServe(":"+os.Getenv("PORT"), r)
if err != nil {
log.Fatal("ListenAndServe:", err)
}
}
现在,我在Github上找到了该直接替换仓库,用于ListenAndServe(顶点/网关),但我认为我缺少使它正常工作的基本步骤。
我要做的是下载和导入库
import (
...
"github.com/apex/gateway/v2"
)
然后只需替换main,zip中的功能并上传到aws lambda
func main() {
r := new(route.Router)
r.HandleFunc("/squares", squares.Random)
// ... more Handlers
// log.Println("Listening on 8080")
err := gateway.ListenAndServe(":8080", r)
if err != nil {
log.Fatal("ListenAndServe:", err)
}
}
然后设置一个http API网关并链接到lambda函数。
它不起作用。我想我缺少了一些东西,但我不知道是什么。从顶点/网关仓库的示例中,我看不到我所缺少的内容。
该应用程序是Tinygraphs fwiw。
谢谢
{"message":"Not Found"}