javascript - 将 Web 应用程序转换为 Lorca 桌面应用程序时出现 404(未找到)错误
问题描述
背景
有一个https://threejs.org/editor/的 Web 应用程序,其源代码是 three.js 存储库的一部分:
https://github.com/mrdoob/three.js/tree/master/editor
我正在尝试将上述内容与Lorca一起使用来创建 Web 应用程序的桌面应用程序版本。
第一种方法
正如这里所建议的,我使用 Lorca反例作为基础。我在这个位置复制了反例:
/home/m3/go/src/lorca-3d-editor
然后我在这个位置克隆了three.js:
/home/m3/repos/three.js
three.js 编辑器将位于:
/home/m3/repos/three.js/editor
现在,我像这样更改 Lorca 计数器示例源代码,注意这http.Dir()
是设置绝对路径:
ln, err := net.Listen("tcp", "127.0.0.1:0")
if err != nil {
log.Fatal(err)
}
defer ln.Close()
go http.Serve(ln, http.FileServer(http.Dir("/home/m3/repos/three.js/editor")))
ui.Load(fmt.Sprintf("http://%s", ln.Addr()))
提交差异将是:
但我得到这些404 (Not Found)
错误:
第二种方法
我在这里保留了 Lorca 反例的副本:
/home/m3/go/src/lorca-3d-editor
然后,我将整个 three.js 源代码复制到这里:
/home/m3/go/src/lorca-3d-editor/three.js
因此,Web 应用程序源代码位于:
/home/m3/go/src/lorca-3d-editor/three.js/editor
现在,我像这样更改 Lorca 计数器示例源代码,注意这http.Dir("three.js/editor")
是设置相对路径:
ln, err := net.Listen("tcp", "127.0.0.1:0")
if err != nil {
log.Fatal(err)
}
defer ln.Close()
go http.Serve(ln, http.FileServer(http.Dir("three.js/editor")))
ui.Load(fmt.Sprintf("http://%s", ln.Addr()))
现在我404 (Not Found)
又得到了一些:
可能的问题
可能问题在于内部的 Web 应用程序在three.js/editor
整个three.js
存储库中引用了一些文件。但是当为内部静态文件的 Go HTTP 服务器提供服务时three.js/editor
,HTTP 服务器无法找到分散在three.js
存储库中的内容three.js/editor
或three.js
存储库本身的内容所引用的所有外部文件。解决此类问题的最佳做法是什么?
解决方案
推荐阅读
- python - Pytest 安排测试组之间的时间间隔
- javascript - 进度条不适用于我的 JavaScript 代码
- python - Python 用另一个 dict 扩展 __dict__ 对象
- android - 在android studio的后台15分钟后更新用户位置
- collections - 纽曼集合变量
- kubernetes - 带有 Keycloak 网关守卫边车的 Knative 服务
- arrays - 重击。预设变量
- yocto - 是否可以对 yocto 食谱上的源文件进行更改并生效?
- css - 页面悬停时,Wordpress 页面完整文本会加下划线
- android - Firestore 提供与 startAfter 相同的数据