A Node.js service repository has to be a ZIP file containing at least two elements:
If your Node.js service needs additional modules (libraries), you need to install all modules locally and include the sub-folderĀ node_modules. You cannot install modules globally to the Bridge Node.js.
You can use 'npm install' to install those additional modules (see Deploying a Node.js Service Repository via the E2E Bridge).
The following json elements are required in the file package.json:
{ "name": "HelloWorld", "version": "0.0.1", "description": "Hello world HTTP server", "scripts": { "start": "node server.js" }, } |
Element | Description | Mandatory |
---|---|---|
name | Contains the name of the Node.js service as displayed on the Bridge. This is the name taken into account when applying the option Overwrite Service. | mandatory |
version | Contains the version of the Node.js service. | optional |
description | Contains a description of the Node.js service. | optional |
scripts/start | Contains the call to start the Node.js service: | mandatory |
Additional json elements can be added to package.json as needed (e.g. for adding packages/libraries), but will be ignored by the Bridge.
The Bridge provides some environment variables that are strongly recommended to be used by developers in their code:
|
These special environment variables are displayed on the details tab of any Node.js service. Add and configure them on tab Environment Variables of the Node.js service (see Setting Environment Variables for Node.js Services).
If you are writing messages to log files that will be displayed on the Bridge (npm-install, start, stdout, stderr, custom logfiles), you must use UTF-8 encoding. If you do not, special characters may be displayed wrongly in the log view. |
Bridge 7.2.0 Upon stopping a Node.js service, the Bridge will send an operating system signal (SIGINT
) to the service to stop it. If you want to do some clean-up actions before stopping, you have to implement a signal handler for SIGINT
in your Node.js service.
For more information, refer to the Node.js documentation on signal events.