Typically most websites generate JSON responses directly into the HTTP request, they don't write the results into a file that is then served over HTTP.
You will need some kind of server that is exposed to the Internet either way. I would recommend you reading about how to use the HTTP server built into Go, so you don't need to write the results into a file: https://golang.org/doc/articles/wiki/. Once you gain a better understand on how web applications work, you can use higher level web frameworks that can help you be more productive, such as gin: https://github.com/gin-gonic/gin.
If you would still really like to write the results in a file and serve that file, you may as well use Go as the web server, and use https://golang.org/pkg/net/http/#ServeFile.
Example code of doing this:
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))
}