我正在使用iris平台用go语言编程(我非常初学者)。我想让我家里的所有电脑都可以访问服务器,这也是本地机器之一。当我使用我的网络IP(192.168.0.0)或任何指定的IP(192.168.0.15)设置监听器时,它会给我一个恐慌错误。仅可用0.0.0.0或127.0.0.1/localhost或192.168.0.19 - 与localhost相同
import "net"
...
ln, err := net.Listen("tcp4", "192.168.12:9999")
if err != nil{
panic(err)
}
iris.Serve(ln)
...
错误是:恐慌:监听tcp4 192.168.0.12:9999:bind:请求的地址在其上下文中无效。
感谢所有人的帮助。
答案 0 :(得分:3)
您应该了解网络的工作原理,但这里有一些要点让您入门。
您在端口上侦听,而不是IP地址。因此,无论您将哪种机器用作服务器,都可以找到您的本地IP地址:
在Linux或Mac上,您可以采取多种方式:
ifconfig | grep netmask
并获取您当地的地址,例如。 192.168.x.xx
然后使用Go程序启动服务器并侦听像8080这样的本地端口。
例如。
if err := http.ListenAndServe(":8080", nil); err != nil {
//handle error
}
然后,您可以使用家中的其他计算机访问服务器,假设它们位于同一个Wifi上。使用其他计算机并从浏览器访问192.168.x.xx:8080
。
要在评论中回答您的问题,除非他们与您的Wifi连接,否则外人无法访问您的本地服务器。