目标:
当一条新记录插入到特定的 PostgreSQL 表中时,我希望 PostgreSQL 通知我的 Node.js Web 应用程序,以便它可以启动对外部服务的 API 调用。
据我了解,基本步骤是:
这是我对每一步的尝试:
notification_app_after_table_insert.pgsql中的触发函数
CREATE OR REPLACE FUNCTION notify_app_after_table_insert()
RETURNS TRIGGER AS
$BODY$
BEGIN
PERFORM pg_notify('channel', row_to_json(NEW)::text);
RETURN new;
END;
$BODY$
LANGUAGE plpgsql
Run Code Online (Sandbox Code Playgroud)
在trigger_notify_app_after_table_insert.sql中触发
CREATE TRIGGER trigger_notify_app_after_table_insert
AFTER INSERT
ON table
FOR EACH ROW
EXECUTE PROCEDURE notify_app_after_table_insert();
Run Code Online (Sandbox Code Playgroud)
index.js 中的侦听器机制(在我的网络应用程序的后端内)
//tools
const express = require('express');
const app = express();
const cors = require('cors');
const bodyParser = require('body-parser');
const port = …Run Code Online (Sandbox Code Playgroud)