通过Golang服务HTML5应用程序

通过Golang服务HTML5应用程序,html,heroku,go,Html,Heroku,Go,我最近制作了一个golang应用程序,并将其托管在Heroku上,我想通过golang net/http路由器(at”/serv)为我的HTML5提供服务,服务器运行良好,但当我输入时: http.ServeFile(w, r, "html/index.html") 页面加载,我的html应用程序的名称出现,但应用程序没有加载,它基本上保持为一个黑屏 我的html5应用程序在(localhost)中看起来像这样 我的html5应用程序的文件目录是 您已经设置了一个处理程序,只为一个文件提供服

我最近制作了一个golang应用程序,并将其托管在Heroku上,我想通过golang net/http路由器(at”/serv)为我的HTML5提供服务,服务器运行良好,但当我输入时:

http.ServeFile(w, r, "html/index.html")
页面加载,我的html应用程序的名称出现,但应用程序没有加载,它基本上保持为一个黑屏

我的html5应用程序在(localhost)中看起来像这样

我的html5应用程序的文件目录是

您已经设置了一个处理程序,只为一个文件提供服务,但是除了
html/index.html
上的文件之外,您显然没有任何设置来为其他文件提供服务。您可能需要为整个目录设置文件服务器:

http.Handle("/", http.FileServer(http.Dir("./html")))

那么,我该如何阻止对图片、javascript文件和应用程序的一般源代码的访问呢。这就是互联网的工作原理——如果你想让javascript在浏览器中运行,你必须给他们提供javascript。如果你想在浏览器中显示图片,你必须给他们图片。我当然不介意,但我不希望人们能够通过键入文件名来访问我的文件,我希望所有对index.html的调用/重定向到index.html,除非是来自应用程序本身的调用