none
C# Como enviar um link de um site RRS feed

  • Pergunta

  • Estou estudando IOT arduino + ESP-01s e isto e para ligar um LED

    Quero enviar algo assim http://meu-site/?estado=ligar

    Tentei usando:

    //sendo url = "?estado=ligar"
    
    String urlAddress = "http://meu-site/" + url;
    
    
    // 1ª tentativa
    
                var request = (HttpWebRequest)WebRequest.Create(urlAddress);
                request.GetResponse();
    
    // 2ª tentativa
    
                 using (WebClient client = new WebClient())
                {
                    client.OpenRead(urlAddress);
                }
    
    
    // 3ª tentativa
    
                using (WebClient client = new WebClient())
                {
                    client.DownloadString(urlAddress);
                }

    erros:

    O primeiro erro que todas davam era  "O servidor cometeu uma violação de protocolo. Section=ResponseStatusLine"

    corrigi usando:

    <configuration>
      <system.net>
        <settings>
          <httpWebRequest useUnsafeHeaderParsing="true" />
        </settings>
      </system.net>
    </configuration>

    Após isso passou a ocorrer mais um erro, que eu não consegui resolver "O tempo limite da operação foi atingido"

    Obs.: O comando chega ao site e faz o papel dele, ligar o LED depois o programa trava e aparece este erro.

    Para quebrar o galho estou usando o webBrowser com a propriedade visible=false e o comando 

    System.Threading.Thread.Sleep(2000); // tempo de espera entre os comandos
    webBrowser1.Navigate("http://meu-site/?estado=ligar");
    Não da nenhum erro, porem o melhor era não depender deste componente.



    • Editado Osvaldo1br quinta-feira, 21 de fevereiro de 2019 01:44
    quinta-feira, 21 de fevereiro de 2019 01:42