2015-10-14 4 views
1

У меня есть сервер, работающий на 127.0.0.1:8000 (приложение Django). Все в порядке, я могу получить его через мой браузер или завиток.Не удалось подключиться к localhost

Но когда я пытаюсь подключить свой ESP8266, чтобы отправить некоторые данные, что-то сломано, я даже не могу подключиться к моему серверу localhost.

Я попытался:

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 fail!» сообщение.

Просто для проверки, с conn:connect(80, "www.google.com"), «в связи» печатается.

Любое предположение?

ответ

2

В TCP/IP имя «localhost» или адресное пространство, смотрящее с 127.0.0.1 до 127.255.255.255, является локальной машиной. Значит сама машина. Я предполагаю, что ваше приложение Django работает на компьютере и с этого компьютера с любым браузером или завитком, вы можете подключиться и использовать службу django.

Когда вы пытаетесь подключить услугу django из модуля esp, вы пытаетесь использовать localhost ip, что означает сам модуль esp. Поскольку в esp ничего не работает, как сервис, ничего не происходит.

Если вы хотите подключить модуль esp к службе django, запущенной на вашем компьютере, вам нужно ввести реальный адрес вашего компьютера. Он должен быть похож на 192.168.1.5 или sth как на то, что bu не начинается с 127.XXXXXXXX.

В основном, когда вы вводите conn:connect(8000, "localhost"), вы пытаетесь подключить esp. Не ваш джанго на вашем компьютере.

+0

Я что-то узнал! – bixente57