我创建了以下草图,几乎完全基于arduino.cc 上提供的 Bridge 教程。
我不明白为什么示例 Bridge 脚本对我有用(通过卷曲 URI 来切换引脚 13 上的 LED arduino.local/arduino/digital/13/1
),但是当我 curl 时,这个更简单的草图会以我的失败字符串“Unrecognized command: hello”响应arduino.local/arduino/hello/
。
我错过了什么?
#include <Bridge.h>
#include <YunServer.h>
#include <YunClient.h>
YunServer server;
void setup() {
Serial.begin(9600);
// Bridge startup
pinMode(13,OUTPUT);
digitalWrite(13, HIGH);
Bridge.begin();
digitalWrite(13, LOW);
server.begin();
}
void loop() {
// Get clients coming from server
YunClient client = server.accept();
// There is a new client?
if (client) {
// Process request
process(client);
// Close connection and free resources.
client.stop();
}
delay(50); // Poll every 50ms
}
void process(YunClient client) {
// read the command
String command = client.readStringUntil('/');
if (command == "hello") {
client.println(F("I will do your bidding"));
return;
}
client.print(F("Unrecognized command: "));
client.println(command);
}
最终,我想使用更长的随机字符串作为键——代替“hello”——允许我从存储了秘密的设备(例如,存储了 URI 的智能手机)中激活连接的组件作为主屏幕上的按钮)。