1

127.0.0.1:8000 (Django アプリケーション) でサーバーを実行しています。すべて問題ありません。ブラウザまたは curl からアクセスできます。

しかし、データを送信するために ESP8266 を接続しようとすると、何かが壊れており、localhost サーバーに接続することさえできません。

I have tried:

conn = net.createConnection(net.TCP, false)
conn:on("connection", function(conn, payload) print("in connection") end)
conn:connect(8000, "127.0.0.1")

Nothing is printed.

I tried with conn:connect(8000, "localhost") , conn:connect(8000, "http://127.0.0.1") , conn:connect(80, "127.0.0.1"). Same results, nothing is printed. With the last one, I have a "DNS fail!" message.

Just to check, with conn:connect(80, "www.google.com"), "in connection" is printed.

Any guess?

4

1 に答える 1

2

TCP/IP では、「localhost」という名前または 127.0.0.1 から 127.255.255.255 までのアドレス空間がローカル マシンです。マシン自体を意味します。あなたのDjangoアプリはコンピューター上で動作し、そのコンピューターから任意のブラウザーまたはcurlを使用して、djangoサービスに接続して利用できると思います。

esp モジュールから django サービスに接続しようとすると、esp モジュール自体を意味する localhost ip を使用しようとします。esp as a service では何も実行されていないため、何も起こりません。

esp モジュールをコンピューターで実行されている django サービスに接続する場合は、コンピューターの実際のアドレスを入力する必要があります。192.168.1.5 または sth のようにする必要がありますが、127.XXXXXXXX で始まっていません。

基本的に、入力conn:connect(8000, "localhost")するとesp自体を接続しようとしています。あなたのコンピュータ上のあなたのジャンゴではありません。

于 2015-10-15T09:01:56.693 に答える