Consultas e Mutações GraphQL¶
O ESP32-HTTP-Client disponibiliza uma API nativa e fluente para operações GraphQL, realizando streaming direto para variáveis sem alocação do payload na memória heap.
Consulta Básica (POST)¶
#include <WiFi.h>
#include "ESP32HTTPClient.h"
ESP32HTTPClient client("https://api.example.com");
String nome;
int id;
void setup() {
Serial.begin(115200);
client.graphql("/graphql")
.query("query { user { id name } }")
.getData("user.id", &id)
.getData("user.name", &nome);
if (client.isSuccess()) {
Serial.printf("Usuário: %s (ID: %d)\n", nome.c_str(), id);
}
}
Consulta via HTTP GET¶
Consultas somente de leitura podem ser realizadas via HTTP GET:
String status;
client.graphqlGet("/graphql")
.query("{ systemHealth }")
.getData("systemHealth", &status);
Mutações GraphQL (POST)¶
Mutações alteram dados no servidor e são sempre executadas via HTTP POST: