无法连接到ESP8266 NodeMCU服务器

时间:2015-06-03 19:26:14

标签: http lua wifi nodemcu esp8266

我一直无法连接到运行NodeMCU的ESP-01 Wifi模块。我已经设置了一个简单的服务器,但每当我尝试通过浏览器连接到IP地址时,我的浏览器就会超时 我知道我正在连接设备,因为我可以看到从模块输出的连接数据。但是,浏览器从不连接到设备。我已经研究了一段时间,并进行了几次代码更改并且没有运气。这是我为服务器运行的代码(它直接来自NodeMCU文档):

wifi.setmode(wifi.STATION)
wifi.sta.config("SSID","password")
wifi.sta.connect()

srv=net.createServer(net.TCP) 
srv:listen(80,function(conn) 
    conn:on("receive",function(conn,payload) 
    print(payload) 
    conn:send("<h1> Hello, NodeMcu.</h1>")
    end) 
end)

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:3)

我对NodeMCU一无所知,但这不是一个合适的http服务器。为了正确使用浏览器,它应该返回一些标题。

发送响应后,您可以尝试关闭连接。请尝试以下方法:

wifi.setmode(wifi.STATION)
wifi.sta.config("SSID", "password")
wifi.sta.connect()

srv = net.createServer(net.TCP)
srv:listen(80,function(conn)
    conn:on("receive", function(conn, payload)
        print(payload)
        local response = "HTTP/1.1 200 OK\r\n\r\n<h1> Hello, NodeMcu.</h1>"
        conn:send(response, function()
            conn:close()
        end)
    end)
end)

您还可以学习this http server的代码。