Проект npm за корпоративным прокси-сервером - PullRequest
0 голосов
/ 07 мая 2018

Я уже нашел много полезных руководств по локальной и глобальной настройке прокси для установки пакетов и так далее. Теперь я запустил новый проект и выяснил, как повторно использовать настройки прокси:

#! /usr/bin/env node

var http = require("http");
var shell = require('shelljs');
var request = require('request');
var iplocation = require('iplocation')

// setup proxy
var proxyUrl = shell.exec('npm config get proxy', {silent:true}).stdout;
var proxiedRequest = request.defaults({
  'proxy': proxyUrl, 
  'https-proxy' : proxyUrl,
  'strict-ssl' : false
});

// get location (works)
  proxiedRequest('http://ipinfo.io/216.58.194.46', function (error, response, body) {
  console.log('error:', error);
  console.log('statusCode:', response && response.statusCode);
  console.log('body:', body); 
});

// doesn't work 
iplocation('56.70.97.8').then(res => {
  console.log(res.iplocation)
  })
  .catch(err => {
    console.error(err);
})

Есть ли способ установить его как-то глобально для проекта, чтобы другие пакеты npm тоже могли его использовать? Я попробовал локальный файл .npmrc в папке проектов, но это никак не влияет на окружающую среду.

Любые намеки приветствуются. Спасибо

1 Ответ

0 голосов
/ 07 мая 2018

Этот SO answer1 , SO answer2 объясняет различные способы установки прокси npm. Посмотрите, поможет ли это вам.

Вы можете добавить функции, такие как proxy_on и proxy_off, в ваш bashrc, которые позволят вам установить глобальную конфигурацию npm и переключать ее из командной строки.

См. Этот код gist .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...