我在postgresql中安装了plperl语言,目的是使用函数向api端点发送restful api请求。我的功能低于
CREATE OR REPLACE FUNCTION sdpmtn_mt.sendnotification(
)
RETURNS text
LANGUAGE 'plperl'
COST 100
VOLATILE SECURITY DEFINER PARALLEL UNSAFE
AS $BODY$
plperl.on_init='require REST::Client';
use REST::Client;
use Encode qw(encode);
my $client = REST::Client->new();
$client->getUseragent()->proxy( 'https', 'https://xdmactive.maxarmdm.com:8443//test /test'); -- # use4 proxy authentication
$client->addHeader('Content-Type', 'application/json'); -- # headers
$client->addHeader('Api-Key', '9Yw_jmh.ey3rUlkzjsdueliokT1A_kh'); # headers
$client->GET('https://xdmactive.maxarmdm.com:8443/semarchy/api/rest/query/test/test'); -- # encoding
return $client->responseContent();
$BODY$;
ALTER FUNCTION sdpmtn_mt.sendnotification()
OWNER TO postgres;
错误为
错误:无法在EOF的第2行修改标量赋值中的常量项出现错误后BEGIN不安全--编译在第3行中止。PL/Perl函数的编译";发送通知";SQL状态:42601
plperl.on_init
是PostgreSQL配置参数,而不是Perl变量。您可以在PostgreSQL.conf文件中设置它。