Arduino EtherCard Опубликовать StaticJsonDocument на веб-сервер - PullRequest
0 голосов
/ 10 февраля 2020

Я работаю над проектом, в котором мне нужно отправить некоторые данные датчика в мой веб-сервис по протоколу tcp. Я использовал StaticJsonDocument для хранения этих данных датчика. Проблема в том, что с кодом ниже я не могу быть в состоянии опубликовать какие-либо данные. В настоящее время я использую ENC28J60 для подключения ethe rnet.


void sendToApi (StaticJsonDocument<600> root) {

  byte sd = stash.create();

  String json_string;
  serializeJson(root, json_string);

  stash.print(json_string);
  stash.save();



  int stash_size = stash.size();
  Serial.println(stash_size);
  Stash::prepare(PSTR("POST /api/module HTTP/1.1" "\r\n"
    "Host: 192.168.1.5:8181" "\r\n"
    "Content-Type: application/json" "\r\n"
    "Content-Length: $D" "\r\n"
    "Authorization: Basic bWV0Ok1ldEF0czE4Kio=" "\r\n"
    "\r\n"
    "$H"),
   stash_size, sd);


  session = ether.tcpSend();
  //Serial.println(session);


  delay(2000);

}

Нет проблем с контроллером ethe rnet (я могу пропинговать Google). Также нет проблем со стороны сервера. HTTP-запрос почтальона приведен ниже.

POST /api/module/ HTTP/1.1
Host: 192.168.1.5:8181
Content-Type: application/json
Authorization: Basic bWV0Ok1ldEF0czE4Kio=
Cache-Control: no-cache
Postman-Token: e160d927-7e05-414f-e0d8-102f3d039ce3

{"id":"0001","module_no":1,"m1":22.5625,"m2":22.5625,"m3":22.5625,"m4":22.5625,"m5":22.5625,"m6":22.5625,"m7":22.5625,"m8":22.5625,"m9":22.5625,"m10":22.5625,"m11":22.5625,"m12":22.5625,"m13":22.5625,"m14":22.5625,"m15":22.5625,"m16":22.5625,"t1":22.5625,"t2":22.5625,"t3":22.5625,"t4":22.5625,"t5":22.5625,"t6":22.5625,"t7":22.5625,"t8":22.5625,"t9":22.5625,"t10":22.5625,"t11":22.5625,"t12":22.5625,"t13":22.5625,"t14":22.5625,"t15":22.5625,"t16":22.5625,"af":22.5625,"uf":22.5625,"sg":22.5625,"sc":22.5625,"a1":946,"a2":946,"a3":946,"a4":946,"a5":946,"a6":32,"a7":32,"a8":32,"a9":946,"a10":946,"a11":946,"a12":946,"a13":32,"a14":32,"a15":32,"a16":32}

Так чего мне здесь не хватает?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...