【问题标题】:Get request URL in Arduino web server在 Arduino Web 服务器中获取请求 URL
【发布时间】:2020-09-17 01:04:02
【问题描述】:

我正在尝试显示发送到我的 Arduino(mega + WiFi r3)网络服务器的任何值,我该怎么做?提前致谢。

使用此示例,服务器侦听“ledOn”,然后执行操作,但我希望服务器侦听来自客户端的任何请求并在串行监视器中显示请求。

server.on("ledOn", [](){
// My code     
  });

【问题讨论】:

  • @Juraj 非常感谢。 server.uri() 完全符合我的要求

标签: arduino webserver arduino-ide nodemcu arduino-esp8266


【解决方案1】:

您在组合板上的 ESP8266 中使用 ESP8266WebServer 库。参考在README 文件中,该库中有很好的示例。

获取请求URL的函数是server.uri()

通常为了处理 GET 请求,不会使用 uri() 函数读取 URL,但 resource 部分(“路径”)与 setup() 中的 on() 函数匹配为server.on("some/path", fncToHandle); 和 GET 请求的 URL 参数由 WebServer 库解析,并通过一组函数提供:

const String & arg();
const String & argName();
int args();
bool hasArg();

标准url参数在?之后,格式为name=value,用&like分隔

 /some/path?name=John&lastName=Smith

来自 SimpleAuthentication 示例的 sn-ps:

来自setup()

server.on("/login", handleLogin);

来自handleLogin

  if (server.hasArg("USERNAME") && server.hasArg("PASSWORD")) {
    if (server.arg("USERNAME") == "admin" &&  server.arg("PASSWORD") == "admin") {

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-24
    • 2023-03-30
    • 2016-01-01
    • 1970-01-01
    • 2011-07-26
    • 1970-01-01
    • 1970-01-01
    • 2021-07-31
    相关资源
    最近更新 更多