установка переменной среды для динамического изменения порта в express node.js - PullRequest
1 голос
/ 07 ноября 2019

У меня на сервере работает приложение index.js, которое работает на порту 3000, и я изменяю его по переменной среды, но оно все еще не работает. Я пытаюсь следовать учебнику, и он говорит.

 1- Create an environment variable for port or run default 3000 port.
 2- Pass that variable to to app.listen()
 3- Set port=5000

Но порт не меняется и остается все еще 3000. Он не может установить порт на 5000.

Кодindex.js находится здесь:

//index.js
const express = require('express');
var app = express();
app.get('/', (req, res)=>{
    res.send('Hello World!!!');
});
const port = process.env.PORT || 3000 ; 
app.listen(port, () => console.log('listening on port ' + port));

Выход в терминале приведен ниже:

//terminal
PS F:\node practical\Restful APIs\express-demo> set PORT=5000
PS F:\node practical\Restful APIs\express-demo> nodemon index.js
[nodemon] 1.19.4
[nodemon] to restart at any time, enter `rs`
[nodemon] watching dir(s): *.*
[nodemon] watching extensions: js,mjs,json  
[nodemon] starting `node index.js`
listening on port 3000[enter image description here][1]

1 Ответ

0 голосов
/ 07 ноября 2019

Вы можете использовать пакет dotenv для динамической установки порта из файла среды.

После установки (npm i dotenv), вы будете использовать его в первых строках, если ваш основной файл (index.js или приложение).js)

require("dotenv").config();

Затем вам нужно будет создать файл .env в главной папке приложения со следующим содержимым:

PORT=5000

И ваш process.env.PORT будетбыть 5000.

...