尝试“ Connect Raspberry Pi to Azure IoT Hub (Python)”教程,该教程今天上午工作得很好,但现在收到错误消息:
import org.simpleflatmapper.csv.*;
import org.simpleflatmapper.csv.impl.writer.CsvCellWriter;
..........
FileWriter writer = new FileWriter("new_file.csv");
CsvCellWriter cellWriter = CsvCellWriter.DEFAULT_WRITER.separator(',').quote('"');
lines.forEach ( strs -> {
try {
if (strs.length > 0) {
cellWriter.writeValue(strs[0], writer);
for (int i = 1; i < strs.length; i++) {
cellWriter.nextCell(writer);
cellWriter.writeValue(strs[i], writer);
}
}
cellWriter.endOfRow(writer);
} catch (IOException e) {e.printStackTrace();}
} );
writer.close();
这是当我试图简单地运行应用程序时。
在app.py中检查此错误的代码:
pi@raspberrypi:~/iot-hub-python-raspberrypi-client-app $ python app.py HostName=RPiHub.azure-devices.net;DeviceId=MyPi;SharedAccessKey=Rd++cewght3xMyzpzKeQkKIUxwLokI5BQpvanXYntXE=
Device connection string is not correct.
教程说,该字符串应该是“您的Azure IoT中心设备连接字符串”,我正是从教程说的地方得到的。
奇怪的是,这一切在早期都可以正常工作,但是现在尝试在新的Pi上再次执行它只是拒绝工作。
我删除了Azure门户中的所有内容,所有资源等,以便从头开始尝试。是否有我错过或遗留下来的东西可能导致这种情况?
答案 0 :(得分:0)
您应该在命令中的设备连接字符串中加上引号。
python app.py "{Device Connection String}"
否则, CONNECTION_STRING 将如下所示。
HostName=*.azure-devices.net