Um cURL in PostgreSQL vorzubereiten, benötigen wir
postgres selbst und seine Erweiterung
pg_curl . (Ich habe Links zu meinen Fork-Postgres angegeben, da ich einige Änderungen vorgenommen habe, die noch nicht in das ursprüngliche Repository verschoben werden konnten. Sie können auch das
vorgefertigte Image verwenden .)
Installieren Sie zunächst die Erweiterung mit dem Befehl
CREATE EXTENSION pg_curl
Erstellen Sie eine Funktion, um die Anforderung zu erhalten
CREATE OR REPLACE FUNCTION get(url TEXT) RETURNS TEXT LANGUAGE SQL AS $BODY$ WITH s AS (SELECT pg_curl_easy_reset(),
Erstellen Sie für eine urlencodierte Post-Anfrage eine Funktion
CREATE OR REPLACE FUNCTION post(url TEXT, request JSON) RETURNS TEXT LANGUAGE SQL AS $BODY$ WITH s AS (SELECT pg_curl_easy_reset(),
Erstellen Sie für eine JSON-Post-Anfrage eine Funktion
CREATE OR REPLACE FUNCTION post(url TEXT, request JSON) RETURNS TEXT LANGUAGE SQL AS $BODY$ WITH s AS (SELECT pg_curl_easy_reset(),
Erstellen Sie eine Funktion, um E-Mails zu senden
CREATE OR REPLACE FUNCTION email(url TEXT, username TEXT, password TEXT, subject TEXT, "from" TEXT, "to" TEXT[], data TEXT, type TEXT) RETURNS TEXT LANGUAGE SQL AS $BODY$ WITH s AS (SELECT pg_curl_easy_reset(),
Und das alles kann mit dem
Scheduler asynchron im Hintergrund erfolgen.