@acpaas-ui-widgets/nodejs-notification 中文文档教程
Notification Widget UI BFF (NodeJS)
这是一个 Node.js 后端服务库为通知小部件创建 BFF 服务。 该小部件提供通知。 此服务与相应的 UI 相匹配。
有一个演示服务,请参阅下面的运行说明。
How to use
Installing
然后安装(您需要在 digipolis 网络上):
> npm install @acpaas-ui-widgets/nodejs-notification
Using in Express
By loading the router
const express = require('express');
const app = express()
const router = express.Router();
/**
* Import the notification module
*/
const notificationModule = require('@acpaas-ui-widgets/nodejs-notification-widget/src/notification');
/**
* Create the notification router.
* Get an API key from de API Store
*/
const notificationRouter = notificationModule.notificationRouter({
API_KEY: process.env.API_KEY,
NOTIFICATION_API: process.env.NOTIFICATION_API,
});
/**
* Use the router
*/
router.use('/api/v1/notifications', notificationRouter);
app.use('', router);
app.listen(3000);
By loading the controller
const express = require('express');
const app = express()
const router = express.Router();
/**
* Import the notification module
*/
const notificationModule = require('@acpaas-ui-widgets/nodejs-notification-widget/src/notification');
/**
* Create the notification controller.
* Get an API key from de API Store
*/
const notificationController = notificationModule.notificationController({API_KEY:process.env.API_KEY, NOTIFICATION_API: process.env.NOTIFICATION_API});
/**
* Add the GET requests
*/
router.get(`/`, notificationController.getAllInAppMessages);
router.get(`/overview`, notificationController.getAllInAppMessagesUnreadCount);
/**
* Add the PATCH requests
*/
router.patch(`/:messageId`, notificationController.setInAppMessageStatus);
/**
* Add the Delete requests
*/
router.delete(`/:messageId`, notificationController.deleteInAppMessage);
app.use('', router);
app.listen(3000);
Run the demo app
创建一个 .env 文件,其中包含:(
PORT=3002
API_KEY=<client id>
NOTIFICATON_API='https://api-gw-a.antwerpen.be/acpaas/in-app-notification/v2/'
删除 URL 中的 -a 扩展名以使用生产 api。)
运行服务:
> npm install
> npm start
运行测试套件:(
> npm run test
生成的覆盖文件在 coverage 文件夹中)
Service Specification
postman collection 中描述的规范。 使用集合调用演示 api。
Contributing
我们欢迎您的错误报告和拉取请求。
请参阅我们的贡献指南。
License
该项目根据 MIT 许可发布。
Notification Widget UI BFF (NodeJS)
This is a Node.js backend service library to create a BFF service for the Notification Widget. The widget provides a notification. This service is matched by a corresponding UI.
There is a demo service, see below for instructions on running it.
How to use
Installing
Then install (you will need to be on the digipolis network):
> npm install @acpaas-ui-widgets/nodejs-notification
Using in Express
By loading the router
const express = require('express');
const app = express()
const router = express.Router();
/**
* Import the notification module
*/
const notificationModule = require('@acpaas-ui-widgets/nodejs-notification-widget/src/notification');
/**
* Create the notification router.
* Get an API key from de API Store
*/
const notificationRouter = notificationModule.notificationRouter({
API_KEY: process.env.API_KEY,
NOTIFICATION_API: process.env.NOTIFICATION_API,
});
/**
* Use the router
*/
router.use('/api/v1/notifications', notificationRouter);
app.use('', router);
app.listen(3000);
By loading the controller
const express = require('express');
const app = express()
const router = express.Router();
/**
* Import the notification module
*/
const notificationModule = require('@acpaas-ui-widgets/nodejs-notification-widget/src/notification');
/**
* Create the notification controller.
* Get an API key from de API Store
*/
const notificationController = notificationModule.notificationController({API_KEY:process.env.API_KEY, NOTIFICATION_API: process.env.NOTIFICATION_API});
/**
* Add the GET requests
*/
router.get(`/`, notificationController.getAllInAppMessages);
router.get(`/overview`, notificationController.getAllInAppMessagesUnreadCount);
/**
* Add the PATCH requests
*/
router.patch(`/:messageId`, notificationController.setInAppMessageStatus);
/**
* Add the Delete requests
*/
router.delete(`/:messageId`, notificationController.deleteInAppMessage);
app.use('', router);
app.listen(3000);
Run the demo app
Create a .env file containing:
PORT=3002
API_KEY=<client id>
NOTIFICATON_API='https://api-gw-a.antwerpen.be/acpaas/in-app-notification/v2/'
(Remove the -a extension in the URL's to use the production api.)
Run the service:
> npm install
> npm start
Run the test suite:
> npm run test
(Coverage file generated in the coverage folder)
Service Specification
Specifications described in the postman collection. Use the collection to call the demo api.
Contributing
We welcome your bug reports and pull requests.
Please see our contribution guide.
License
This project is published under the MIT license.