PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Aufrufen von RESTful-Webdiensten aus einer PostgreSQL-Prozedur/Funktion

Ja, es ist möglich, allerdings nicht direkt von Postgresql selbst. Ich kenne mich mit Java nicht aus, aber der schnellste Weg ist, plperlu zu verwenden mit REST::Client Paket, z. B.:

CREATE OR REPLACE FUNCTION restful.put(auri character varying, ajson_text text)
 RETURNS text
 LANGUAGE plperlu
 SECURITY DEFINER
AS $function$
  use REST::Client;  
  use Encode qw(encode);
  my $client = REST::Client->new();    
  $client->getUseragent()->proxy( 'https', 'http://some-proxy/' ); # use for proxy authentication
  $client->addHeader('Content-Type', 'application/json');          # headers
  $client->POST( $_[0], encode('UTF-8', $_[1]));                   # encoding
  return $client->responseContent();  
$function$