c't 8/2023
S. 134
Wissen
JSON mit C++
Bild: Michael Vogt

Eingefroren, aufgetaut

Webservices in C++, Teil 2: JSON-Daten (de)serialisieren

Die allermeisten Webanwendungen tauschen mit ihrem Backend Daten im JSON-Format aus. Das Verarbeiten und Erzeugen solcher Nachrichten ist damit Brot und Butter in Webservices. In C++-Code gelingt das mit der Boost-Bibliothek PropertyTree. Ein Leitfaden.

Von Oliver Lau

Statt nur ein monströses „Hallo, Welt“-Programm zu sein, soll der mithilfe von Boost.Beast programmierte Webservice aus Teil 1 [1] dieser kleinen Artikelserie etwas Sinnvolles tun: beliebig große Zahlen darauf prüfen, ob sie prim sind, und mit einer Aussage über die Primeigenschaft sowie gegebenenfalls den Primfaktoren antworten. Wie der Webservice die empfangenen Daten einliest und seine Ergebnisse für die Übertragung vorbereitet, zeigt dieser zweite Teil.

Zum Übertragen strukturierter, zusammengesetzter Daten ist das JSON-Format (JavaScript Object Notation) eine gute Wahl. Daten in diesem Format bestehen aus menschenlesbaren, UTF-8-kodierten Zeichenfolgen. Zwar gibt es zum Datenaustausch zwischen Client und Server effizientere Formate, zum Beispiel Protobuf (Protocol Buffers) von Google [2], aber noch baut die Mehrheit der Webanwendungen auf das gute, alte JSON.

Alle heise-Magazine mit heise+ lesen

3,99 € / Woche

Ein Abo, alle Magazine: c't, iX, Mac & i, Make & c't Fotografie

  • Alle heise-Magazine im Browser und als PDF
  • Alle exklusiven heise+ Artikel frei zugänglich
  • heise online mit weniger Werbung lesen
  • Vorteilspreis für Magazin-Abonnenten
Jetzt unbegrenzt weiterlesen Vierwöchentliche Abrechnung.

Alle Ausgaben freischalten

2,95 € 0,25 € / Woche

Nach Testphase 2,95 € wtl.

  • Zugriff auf alle c't-Magazine
  • PDF-Ausgaben zum Herunterladen
  • Zugriff in der c't-App für unterwegs
Jetzt testen Nach Testphase jederzeit monatlich kündbar.

Ausgabe einmalig freischalten

5,90 € / Ausgabe

Diese Ausgabe lesen – ohne Abobindung

  • Sicher einkaufen im heise shop
  • Magazin direkt im Browser lesen
  • Dauerhaft als PDF behalten

Kommentare lesen (3 Beiträge)