我的本地程序现在执行的操作是连接到websocket,并在收到消息时使用json更新本地文件。在线运行golang并将其保存到在线文件
有没有办法在线运行golang程序,然后更新并保存文件作为json文件在线,我将能够看到?我不确定,但我想我需要一个网络服务器?
例如,该程序会生成一个这样的网站https://www.reddit.com/r/all.json?
我的本地程序现在执行的操作是连接到websocket,并在收到消息时使用json更新本地文件。在线运行golang并将其保存到在线文件
有没有办法在线运行golang程序,然后更新并保存文件作为json文件在线,我将能够看到?我不确定,但我想我需要一个网络服务器?
例如,该程序会生成一个这样的网站https://www.reddit.com/r/all.json?
通常,大多数网站直接向HTTP请求生成JSON响应,它们不会将结果写入通过HTTP提供的文件中。
您将需要某种类型的服务器以任何方式暴露于Internet。我建议你阅读关于如何使用Go内置的HTTP服务器,所以你不需要将结果写入文件:https://golang.org/doc/articles/wiki/。一旦您更好地了解Web应用程序的工作方式,您可以使用更高级别的Web框架来帮助您提高生产力,例如杜松子酒:https://github.com/gin-gonic/gin。
如果您仍然非常想将结果写入文件并提供该文件,那么您最好使用Go作为Web服务器,并使用https://golang.org/pkg/net/http/#ServeFile。这样做的
示例代码:
package main
import (
"log"
"net/http"
)
func main() {
http.HandleFunc("/myfile.json", func(w http.ResponseWriter, r *http.Request) {
http.ServeFile(w, r, "path/to/myfile.json")
})
// Serve on HTTP port (80)
log.Fatal(http.ListenAndServe(":80", nil))
}
谢谢你,我还是新来这个,所以我不知道其他网站是怎么做的。您链接的文件看起来非常有用,现在我将开始阅读它们。 – user7364037