Nodemcu Lua ESP8266不使用IP地址发送TCP套接字

时间:2017-07-07 19:13:36

标签: php sockets tcp lua nodemcu

我最近买了一台NodeMcu Lua(Lolin),我正在用它做一些测试。 我试图做的是将TCP数据包发送到我的服务器上的PHP脚本,如果我尝试使用端口和主机名发送数据包它可以工作,但如果我尝试使用IP它不会,这是一个错误或什么?

这只是一个测试,因为我真正需要做的是使用这个板将TCP数据包发送到我在我的电脑上运行的PHP脚本(因此在同一网络中)与XAMPP一起运行。

为什么电路板不使用IP发送任何数据包但输入主机名? 另外我需要使用什么地址将数据包从电路板发送到我的计算机(作为服务器的php脚本和充当客户端的电路板)?

这是我用于董事会的LUA代码:

wifi.setmode(wifi.STATION)
wifi.sta.config("Alice-49289348", "mypassword")
wifi.sta.connect()

Disp = "D1"
Port = 9863
HostIP = "81.139.206.12"

conn=net.createConnection(net.TCP, 0)
conn:on("receive", function(conn, c) print(c) end )
conn:on("connection", function(conn, c)
    print("Connected")
    conn:send(Disp)
    end )
conn:on("sent", function(conn, c)
    print("Sent: " .. Disp)
    conn:close()
    end )
conn:connect(Port,HostIP)

print("Done")

我已经更改了一些值,如IP地址,wifi,密码等,以保护隐私。

1 个答案:

答案 0 :(得分:0)

您似乎可以使用"重新连接","断开连接"事件。 https://nodemcu.readthedocs.io/en/master/en/modules/net/#netsocketon

此外,此功能可能有助于验证ip的正确性。 https://nodemcu.readthedocs.io/en/master/en/modules/net/#netsocketdns