• Arduino内部网页代理,网页穿透,公网访问Arduino内部网页


    Arduino内部网页代理,网页穿透,公网访问Arduino内部网页
    项目地址:https://github.com/IoTServ/esp8266-Arduino-web-proxy/tree/master
    看下效果: <ignore_js_op> <ignore_js_op>

    Arduino (2).png (24.01 KB, 下载次数: 2)

    下载附件

    2017-4-24 17:32 上传

     



    好了上代码:

    #include <ESP8266WiFi.h>
    const char* id     = "id";  //http://www.mcunode.com/proxy/id/LED  if id==4567  then url:http://www.mcunode.com/proxy/4567/LED
    const char* ssid     = "ssid";
    const char* password = "password";
    int ledPin = 13;
    const char* host = "www.mcunode.com";
    
    void setup() {
      Serial.begin(115200);
      delay(10);
    
      Serial.println();
      Serial.println();
      Serial.print("Connecting to ");
      Serial.println(ssid);
      
      WiFi.mode(WIFI_STA);
      WiFi.begin(ssid, password);
      
      while (WiFi.status() != WL_CONNECTED) {
        delay(500);
        Serial.print(".");
      }
    
      Serial.println("");
      Serial.println("WiFi connected");  
      Serial.println("IP address: ");
      Serial.println(WiFi.localIP());
    }
    
    int value = 0;
    
    void loop() {
      delay(5000);
      ++value;
    
      Serial.print("connecting to ");
      Serial.println(host);
      
      WiFiClient client;
      const int httpPort = 8001;
      if (!client.connect(host, httpPort)) {
        Serial.println("connection failed");
        return;
      }
    
    
    if (client.connected())
    {
      client.write(id);
      delay(1000);
      while (1)
      {
    
      String request = client.readStringUntil('
    ');
      Serial.print(request);
      client.flush();
    
      int value = LOW;
      if (request.indexOf("/LED=ON") != -1)  {
        digitalWrite(ledPin, HIGH);
        value = HIGH;
      }
      if (request.indexOf("/LED=OFF") != -1)  {
        digitalWrite(ledPin, LOW);
        value = LOW;
      }
    Serial.println(value);
    
    
      if(value == HIGH) {
        client.print("<h1> ESP8266 Arduino Web Server</h1>Led pin is now:on <br><br><a href="LED=ON""><button>Turn On </button></a><a href="LED=OFF""><button>Turn Off </button></a><br />");
      } else {
        client.print("<h1> ESP8266 Arduino Web Server</h1>Led pin is now:off  <br><br><a href="LED=ON""><button>Turn On </button></a><a href="LED=OFF""><button>Turn Off </button></a><br />");
      }
      
      }
    }
    }
    复制代码
    

      完全实现mcunode.com的服务端:https://github.com/IoTServ/McuNode-server 运行之后访问服务器的ip就行,也有安卓版服务器(没错,网站跑在安卓手机上),git大小限制,没传,而且是初始版本

  • 相关阅读:
    C#多线程开发中如何更新UI界面控件内容
    C#中Invoke的用法(转)
    while loop, for loop
    basic bash learning 1
    Some useful link for leaning linux shell
    How to Adding ExtendReport in test framework
    如何解决Extent report 无法加载CSS样式 的问题
    Capturing Screenshots
    WebDriver switching to new window
    Data Driven Testing
  • 原文地址:https://www.cnblogs.com/kekeoutlook/p/9722714.html
Copyright © 2020-2023  润新知