nodemcu搭建web服务器出现的问题

用nodemcu搭建服务器,

用lua调试(使用esplorer软件

官方都会提供简单的例子

 -- Start a simple http server
srv=net.createServer(net.TCP)
srv:listen(80,function(conn)
  conn:on("receive",function(conn,payload)
    print(payload)
    conn:send("

Hello, NodeMCU!!!

") end) conn:on("sent",function(conn) conn:close() end) end)

建立完wifi后,wifi.sta.getip() 得到ip地址  192.168.1.104

访问 http://192.168.1.104/ 后出现错误提示

Bad response. The server or forwarder response doesn't look like HTTP.

分析可能是缺少和http相关的东西。


后找到其他类似程序,一个温度湿度的应用程序

srv=net.createServer(net.TCP) 
srv:listen(80,function(conn) 
    conn:on("receive",function(conn,payload) 
        local html = string.format("HTTP/1.0 200 OK\r\n"
        .."Content-Type: text/html\r\n"
        .."Connection: Close\r\n\r\n"
        .."

Hello, NodeMCU!!!

"
) conn:send(html,function(sent) conn:close() end) end) end)

对比发现,前段程序缺少http的定义,所以访问 http://192.168.1.104/  就不能以http方式访问。


简单修改后

srv=net.createServer(net.TCP)
srv:listen(80,function(conn)
  conn:on("receive",function(conn,payload)
    print(payload)
        local html = string.format("HTTP/1.0 200 OK\r\n"
        .."Content-Type: text/html\r\n"
        .."Connection: Close\r\n\r\n"
        .."

Hello, NodeMCU!!!

")     conn:send(html)   end)   conn:on("sent",function(conn) conn:close() end) end)




就可以正常访问 http://192.168.1.104/  了。

结果:

Hello, NodeMCU!!!





你可能感兴趣的:(nodemcu搭建web服务器出现的问题)