2015-10-14 410 views
1

我有一個運行在127.0.0.1:8000(Django應用程序)的服務器。一切都好,我可以通過我的瀏覽器或捲曲來訪問它。無法連接到本地主機

但是,當我嘗試連接我的ESP8266爲了發送一些數據,有些事情是壞的,我甚至無法連接到我的本地主機服務器。

我曾嘗試:被印刷

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

沒有。

我試過conn:connect(8000, "localhost"),conn:connect(8000, "http://127.0.0.1"),conn:connect(80, "127.0.0.1")。相同的結果,沒有打印。最後一個,我有一個「DNS失敗!」信息。

只是爲了檢查,與conn:connect(80, "www.google.com"),打印「連接」。

任何猜測?

回答

2

在TCP/IP中,名稱'localhost'或從127.0.0.1到127.255.255.255的地址空間是本地機器。意味着機器本身。我假設你的Django應用程序可以在計算機上運行,​​並且可以在任何瀏覽器或捲曲的計算機上運行,​​你可以連接和使用django服務。

當您嘗試從esp模塊連接您的django服務時,您嘗試使用本地主機ip,這意味着esp模塊本身。由於沒有任何東西作爲服務運行,沒有任何反應。

如果您想將esp模塊連接到在您的計算機上運行的django服務,您需要鍵入您的計算機的實際地址。它應該像192.168.1.5或者像那個bu不是以127.XXXXXXXX開頭。

基本上,當你鍵入conn:connect(8000, "localhost")你試圖連接esp本身。不是你的電腦上的django。

+0

我在這裏學到了一些東西! – bixente57

相關問題