#6128·wails

[v3/Windows] (英语). 从“ 工作人” 内部创建工作人, 当网页由 资产 服务器 服务时会默默失败

作者: 111111comon创建于 2026年9月16日更新于 2026年9月16日
标签Bugv3

说明

在Windows/WebView2上,在Wails资产服务器(http://wails.localhost')为网页服务时,从另一个工人内部创建了 " 工人 " ** 失败。 它默默地失败了: " 错误 " 事件 " 信息未加定义 " ,而且事件**不是错误的 " 。

请求 * does * 到达了资产服务器——AssetFileServerFS ' 日志显示正在处理,正确的Content-Type ' ——但被窝住的工人从未开始。

同一代码在从一个平原“http://127.0.0.1:<port}”提供页面时有效。 在同一Wails窗口内去收听器,在同Chrimium版本的股票Edge浏览器中工作.

这打破了每一个** Emscripten 线条建筑**, 因为这些产物 他们的工人池 从自己的工人。 就我而言,是JASSUB(libass):其`已准备好 ' 的许诺根本无法达成——没有错误,没有超时。

环境

  • " v3.0.0-β.22 " 、 " GO 1.27.0 " 、 " CGO ENBALD=0 "
  • WebView2运行时间153.0.4234.32
  • Windows 11 26200(25H2),amd64
  • 复制

四个文件, 没有前端工具 :

'main.go' (主语) 开始 主软件包

导入( E) "装入" "fmt" (英语). "哟" "网/http" (中文(简体) ). "欧"

“GitHub.com/wailsapp/wails/v3/pkg/应用程序” (中文(简体) ).

/去:装入全部:前端/dist var资产嵌入. 页:1

func 主 () { 文件:=应用程序. AssetFileServerFS(资产) app:=应用. New( 应用程序 ). 选项{ 名字:"被记下来的工人 - 恢复" 资产:申请。 资产选项{ Handler: http.HandlerFunc (func(w http.ResponseWriter, r *http. request) (中文(简体) ). { 如果 r.URL.Path = "/ 报告" { b, :=io.Readall(r.Body) (中文(简体) ). fmt.Println ("RESULT:",字符串(b)) w. write 页眉( 204) OS. Exit( 0) (单位) 返回时 {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢? 文档。 服务HTTP( w, r) ~ , , ( ) , {\fn华文楷体\fs16\1cHE0E0E0} ) (中文(简体) ). app.Window. New With 选项(应用程序). Webview 窗口选项{ 标题:"消毒工人再pro",Width:700,高:300,URL:"/index.html",. ) (中文(简体) ). 如果错误 := app.run (); 错误 != 0 { fmt. (英语). 打印( err) {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢? {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?


`前端/dist/index.html'
时间轴 :
<!doctype html ><meta charset="utf-8" > title > 已取消的工人重写</title>
<body style='font: 14px 单相空间'\pre id="o">running...</pre=scription type="模块">
cons w = 新工人 ('/ parent.js', {类型:'module'})
w.onmessage = async (e) => {
文档.getElementById ('o').textContent = JSON.stringify (e.data, null, 2)
正在等待获取( “ / 报告 ” ), { 方法 : “ POST ” , 正文: JSON. stringify( e. data) }
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
w.onerror = (e) {文档.get ElementById ('o'). TextContent ="父母工人错误:" + e.message }
</script */body> (中文(简体) ).

`前端/dist/parent.js' " {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你来干什么? const mk = (u, 选项) QQ新承诺(( res) ) { const w = 新工人(u, 选择) w.onmessage = () { { w. termination (); res ('ok' )} w.onerror = (e) { { w. termination (); res ('FAILED (message=" + JSON. stringify (e. message) +", is ErrorEvent=" + (e excent of Error Event) +")) } (错误事件实例) ) setTimeout( ()) {{ w. termination (); res ('timeout')}, 3,000 ) (中文(简体) ). ; (同步 () {{{} const abs = 新的 URL('/ child.js',自发. location.href.href.href). 出来=== cons r = 等待获取( ab) ['fetch(child.js)']= . . . . . . .