自定义浏览器不会呈现自定义 Web 服务器提供的服务
Custom browser won't render what's served by custom web server
我已经将 Tatu 网络服务器修改为 运行 在一个随机端口上,并且 return 这个值来自它的 startServer 进程。然后我启动一个指向 "http://localhost:$port"
的自定义浏览器 (deskmlviewer),如下所示:
set port [tatu::startServer "" "" $tatu::options]
set deskmlRunner {
set viewer [file join $::starkit::topdir .. .. gui bin deskmlviewer.exe]
#puts "$viewer http://localhost:$port"
exec $viewer "http://localhost:$port"
}
after 1 $deskmlRunner
vwait forever
虽然这只是启动浏览器而不呈现内容。然而,这是我的 运行 之一的注释掉 puts
行输出的内容:
C:/opt/dev/dexygen/github/repos/deskml/deskml-win/srv/tatuDeskml.vfs/../../gui/bin/deskmlviewer.exe http://localhost:56077
然后我可以从控制台 运行 并且浏览器显示服务器呈现的内容;我也同样可以在 Chrome 中使用 http://localhost:56077
和 运行,它会呈现预期的内容。 https://i.imgur.com/hvuky2r.png
我尝试将 ms
参数增加到 after
,包括一直增加到像 5000 这样荒谬的东西,但这没有效果。我还尝试用 curly 大括号围绕 $viewer
的 url 参数的全部或部分,以防斜线被转换为倾斜,但这也没有效果。
我做错了什么?我还能尝试什么?您甚至可以通过在 https://github.com/dexygen/deskml 克隆 git 存储库并导航到 deskml-win 和 运行ning ./tclkitsh ./srv/tatuDeskml.vfs/main.tcl
来自己尝试;上面的代码位于 ./deskml-win/srv/lib/app/deskml-runner.tcl
答案需要在 exec 命令的末尾放置一个 &
exec $viewer "http://localhost:$port" &
否则它是同步和阻塞的。功劳不属于我,而是属于 usenet
上的以下 user/response
https://groups.google.com/d/msg/comp.lang.tcl/YOK8a2i0bk8/Qw-12Pn8AgAJ
我已经将 Tatu 网络服务器修改为 运行 在一个随机端口上,并且 return 这个值来自它的 startServer 进程。然后我启动一个指向 "http://localhost:$port"
的自定义浏览器 (deskmlviewer),如下所示:
set port [tatu::startServer "" "" $tatu::options]
set deskmlRunner {
set viewer [file join $::starkit::topdir .. .. gui bin deskmlviewer.exe]
#puts "$viewer http://localhost:$port"
exec $viewer "http://localhost:$port"
}
after 1 $deskmlRunner
vwait forever
虽然这只是启动浏览器而不呈现内容。然而,这是我的 运行 之一的注释掉 puts
行输出的内容:
C:/opt/dev/dexygen/github/repos/deskml/deskml-win/srv/tatuDeskml.vfs/../../gui/bin/deskmlviewer.exe http://localhost:56077
然后我可以从控制台 运行 并且浏览器显示服务器呈现的内容;我也同样可以在 Chrome 中使用 http://localhost:56077
和 运行,它会呈现预期的内容。 https://i.imgur.com/hvuky2r.png
我尝试将 ms
参数增加到 after
,包括一直增加到像 5000 这样荒谬的东西,但这没有效果。我还尝试用 curly 大括号围绕 $viewer
的 url 参数的全部或部分,以防斜线被转换为倾斜,但这也没有效果。
我做错了什么?我还能尝试什么?您甚至可以通过在 https://github.com/dexygen/deskml 克隆 git 存储库并导航到 deskml-win 和 运行ning ./tclkitsh ./srv/tatuDeskml.vfs/main.tcl
来自己尝试;上面的代码位于 ./deskml-win/srv/lib/app/deskml-runner.tcl
答案需要在 exec 命令的末尾放置一个 &
exec $viewer "http://localhost:$port" &
否则它是同步和阻塞的。功劳不属于我,而是属于 usenet
上的以下 user/responsehttps://groups.google.com/d/msg/comp.lang.tcl/YOK8a2i0bk8/Qw-12Pn8AgAJ