1

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)

どんな助けでも大歓迎です。

4

1 に答える 1

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)

この http サーバーのコードを調べることもできます。

于 2015-06-04T18:02:33.957 に答える