Olá pessoal,
sou iniciante no mundo do Arduino. Estou desenvolvendo um sensor de temperatura que se conecta a um WebService que tenho feito em Java.
O protótipo funciona, o webservice (testado com Postman) funciona, porém....
ao enviar os dados do Arduino em JSON para o webservice, não chega nada lá no webservice, ele se conecta, eu vejo ele se conectado no servidor mas os dados não vem.
já tentei usar a biblioteca Arduino Json ou imprimir direto e nada.
Segue como envio o JSON pro webservice
client.println("POST http://192.168.11.174:8080/api/lesensor HTTP/1.1");
client.println("Host: http://192.168.11.174:8080");
client.println("Connection: close");
client.println("User-Agent: Arduino/1.0");
client.println("Content-Type: application/json\n\n");
client.print("{\"temperatura\":");
client.print(Temperatura);
client.print(", \"umidade\":");
client.print(Umidade);
client.println("}");
client.println();
client.println();
a saida é essa: {"temperatura":27.00,"umidade":34.00} no Webservice ele espera exatamente isso, eu mandando por cUrl ou postman ou Angular exatamente essa msg do arudino, o WebSerice recebe e processa, ou seja, eu descarto o erro no servidor.
Alguém já passou por algo semelhante e pode me dar um help?
PS: Enviando os dados por GET, direto na URL no Arduino para o WS, funciona sem problemas
grato desde já
att,
FM
Tags:
Você já testou qual o valor da variável "Temperatura" e da variável "Umidade" para ver ser elas estão vindo no formato correto?
A aplicação espera um formato fixo ou variável?
Imprima o valor dessas variáveis na Serial para saber se elas estão vindo corretamente:
Serial.println(Temperatura);
Serial.println(Umidade);
Ou melhor ainda, Mostre na Serial toda a linha para saber se ele está montando o comando corrretamente:
Serial.print("{\"temperatura\":");
Serial.print(Temperatura);
Serial.print(", \"umidade\":");
Serial.print(Umidade);
Serial.println("}");
delay(3000);
Olá Jose Augusto,
quando mando imprimir na Serial vem os dados certinhos, inclusive já copiei da Serial e coloquei no Postman e funciona certo.
{ "temperatura": 23.00, "umidade": 37.00}
já coloquei os valores como String também e não funcionou
Veja um exemplo de web service:
https://app.box.com/s/3w1ls3gp7hwtadymr90th9mu0uw0nmfm
mais informações: http://adltecnologia.blogspot.com.br/
Obrigado Almir,
to estudando o material aqui
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por