【发布时间】:2020-04-16 14:04:19
【问题描述】:
我有一个工作 python 脚本,它通过连接到其 IP 地址从 wifi 设备(NodeMCU*)检索数据:
import requests
response = requests.get('http://192.168.1.12/data.json')
data = response.json()
print(data)
此脚本有效,因为我的计算机和我的设备都连接到同一个 wifi SSID(我们称之为主 SSID)。
但是我的 wifi 信号对于我的设备来说不够强(因为它在室外),所以我设置了一个 wifi 中继器**,它连接到主 SSID 并创建了一个接入点。然后我将我的设备连接到这个 wifi 中继器接入点。
我在上面的脚本中使用了我设备的新 IP 地址 (10.24.1.2*** ),但这仅在我将计算机与主 SSID 断开连接并将其连接到 wifi 中继器接入点时才有效。但我不想这样做:我的计算机应该保留在主 SSID 上,而我的设备应该在 wifi 中继器接入点上。
所以我的问题是:如何从连接到 wifi 中继器的设备中检索 data.json,而我的计算机仍使用主 SSID?
我查看了 wifi 中继器可以执行的端口转发,但我的设备似乎没有端口:如果我连接到 http://10.24.1.2/data.json,我会看到一堆数据,但如果我连接到 http://10.24.1.2/data.json:3(或任何数字)我得到“未找到”。
但是我可以在我的设备上设置一个带有特定服务器、路径和端口的 API(尽管需要做一些研究才能知道如何使用它)
*) 设备是lufdaten sensor,由nodemcu构建
) 我的 wifi 中继器是另一个使用此 https://github.com/martin-ger/esp_wifi_repeater
编程的 nodemcu
*) 我使用PuTTY通过 TCP/telnet 连接到我的 wifi 中继器 IP 地址检索设备的新 IP
【问题讨论】:
标签: python sockets python-requests wifi router