Go 1.21 会包含通过 WebAssembly 托管 http 的功能吗?如何?
php小编小新很高兴为您解答关于Go 1.21是否会包含通过WebAssembly托管HTTP的功能的问题。目前来说,Go 1.21版本还没有正式发布,因此我们无法确定其中具体的功能。但是,根据我们对Go语言的了解,Go非常注重WebAssembly和网络编程方面的发展,因此很有可能在未来的版本中加入通过WebAssembly托管HTTP的功能。这将为开发者提供更多灵活和高效的Web开发工具。我们建议您持续关注Go语言的官方发布信息,以获取最新的更新和功能。
问题内容
我想在 go 上通过 webassembly 尝试 http 服务器。我认为 go 1.20 不支持在浏览器之外编译 go for web assembly,并且tinygo 中不包含 net/http 库。
在阅读https://stackoverflow.com/a/76091829(感谢@tachyonicbytes)后,我尝试使用 gotip
来完成此操作,但是每当我尝试启动服务器(或任何阻塞/等待功能)时,我都会收到错误: 致命错误:所有 goroutine 都在睡觉 - 死锁!
。我尝试将事情转移到带有等待函数的 goroutine 中,但要么简单地结束该函数,要么给出相同的错误。
这是我的运行方式:
go install golang.org/dl/gotip@latest gotip download goos=wasip1 goarch=wasm gotip build -o server.wasm server.go && wasm3 server.wasm登录后复制