The following code允许捕获所有来自我的esp8266(运行NodeMCU)的请求并显示我自己的页面: static int enduser_setup_dns_start(void){ state-espconn_dns_udp = (struct espconn *) c_malloc(sizeof(struct espconn)); esp_udp *es
static int enduser_setup_dns_start(void) { state->espconn_dns_udp = (struct espconn *) c_malloc(sizeof(struct espconn)); esp_udp *esp_udp_data = (esp_udp *) c_malloc(sizeof(esp_udp)); c_memset(state->espconn_dns_udp, 0, sizeof(struct espconn)); c_memset(esp_udp_data, 0, sizeof(esp_udp)); state->espconn_dns_udp->proto.udp = esp_udp_data; state->espconn_dns_udp->type = ESPCONN_UDP; state->espconn_dns_udp->state = ESPCONN_NONE; esp_udp_data->local_port = 53; return 0; }
它捕获http://example.com,但不捕获https://example.com.我该怎么办呢?
除非您在每台客户端计算机上设置了证书颁发机构,否则无法拦截HTTPS请求(即使不是任何使用HSTS或HPKP的站点也不例外 – 这是相当多的)SSL / HTTPS的重点是客户知道他们正在与他们认为正在谈论的网站交谈.如果没有该网站的证书和私钥,则无法在不产生错误的情况下模拟它.
Wifi强制门户(等)通常忽略HTTPS请求,并等待第一个不安全的HTTP请求.连接到新的wifi网络时,大多数设备将尝试加载HTTP页面,如果他们发现强制门户创建通知/向用户显示