在Lua中获取IP地址
我尝试从我的设备获取本地IP(在Corona Lua中编程),
直到现在我这样做:
local myip = socket.dns.toip(socket.dns.gethostname())
但这仅适用于模拟器
local client = socket.connect( "www.google.com", 80 )
local ip, port = client:getsockname()
,但这仅在我有互联网连接时才有效
我怎样才能在我的Wifi中获取我的本地IP而不需要互联网
谢谢 克里斯
i try to get the local IP from my device ( programming in Corona Lua )
till now I do with:
local myip = socket.dns.toip(socket.dns.gethostname())
but this only works on simulator
local client = socket.connect( "www.google.com", 80 )
local ip, port = client:getsockname()
but this only works when I have a Internet Connection
How could i get my local IP just in my Wifi without Internet
thx
chris
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您正在寻找的接口的 IP 可能会根据您尝试与之通信的 IP 地址而变化。下面的代码使用谷歌的IP来选择一个接口并返回IP地址。
它对我使用 LUA/luasocket 有用,但我还没有在 corona 中尝试过。
编辑:
在这种情况下您不需要互联网,因为您实际上没有连接到任何东西或以其他方式发送任何数据包。但是,您需要相关接口才能真正拥有 IP。
The ip of the interface you are looking for can change based on what IP address you are trying to talk to. The code below uses google's IP to select an interface and return the IP address.
It works me for me using LUA/luasocket but I haven't tried it in corona.
EDIT:
You shouldn't need internet in this case because you're not actually connecting to anything or otherwise sending any packets. You will however need the interface in question to actually have an IP.