title: How can I solve the connection problem during npm install behind a proxy?
body: <p>I followed the instruction:
  <a href="https://www.electronjs.org/docs/tutorial/first-app" rel="noreferrer">https://www.electronjs.org/docs/tutorial/first-app</a></p>
  
  <p>I typed <code>mkdir</code>, <code>cd</code> and <code>npm init</code>. They all worked well. One file named <code>package.json</code> appeared.</p>
  
  <p>Then I typed <code>npm install --save-dev electron</code>. Some error occured.</p>
  
  <pre><code>lala@ubu:~/projects/electron/my-app 17:20:34
  $ npm install --save-dev electron
  
  &gt; core-js@3.6.4 postinstall /home/lala/projects/electron/my-app/node_modules/core-js
  &gt; node -e "try{require('./postinstall')}catch(e){}"
  
  Thank you for using core-js ( https://github.com/zloirock/core-js ) for polyfilling JavaScript standard library!
  
  The project needs your help! Please consider supporting of core-js on Open Collective or Patreon: 
  &gt; https://opencollective.com/core-js 
  &gt; https://www.patreon.com/zloirock 
  
  Also, the author of core-js ( https://github.com/zloirock ) is looking for a good job -)
  
  
  &gt; electron@8.0.0 postinstall /home/lala/projects/electron/my-app/node_modules/electron
  &gt; node install.js
  
  (node:5950) UnhandledPromiseRejectionWarning: RequestError: connect ETIMEDOUT 13.250.177.223:443
      at ClientRequest.&lt;anonymous&gt; (/home/lala/projects/electron/my-app/node_modules/got/source/request-as-event-emitter.js:178:14)
      at Object.onceWrapper (events.js:313:26)
      at ClientRequest.emit (events.js:228:7)
      at ClientRequest.origin.emit (/home/lala/projects/electron/my-app/node_modules/@szmarczak/http-timer/source/index.js:37:11)
      at TLSSocket.socketErrorListener (_http_client.js:406:9)
      at TLSSocket.emit (events.js:223:5)
      at emitErrorNT (internal/streams/destroy.js:92:8)
      at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
      at processTicksAndRejections (internal/process/task_queues.js:81:21)
  (node:5950) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
  (node:5950) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
  npm notice created a lockfile as package-lock.json. You should commit this file.
  npm WARN my-app@1.0.0 No description
  npm WARN my-app@1.0.0 No repository field.
  
  + electron@8.0.0
  added 85 packages from 91 contributors and audited 102 packages in 87.419s
  
  2 packages are looking for funding
    run `npm fund` for details
  
  found 0 vulnerabilities
  </code></pre>
  
  <p>After executing the above instructions, one folder <code>node_modules</code> and one file <code>package-lock.json</code> appeared.</p>
  
  <p>It seemed that I had successfully installed the dependencies. But why one connection error occured?</p>
  
  <p>I can not access <code>github.com(13.250.177.223)</code> directly, but my proxy works.</p>
  
  <p>I have configured proxy as following, but the connection error still exists.</p>
  
  <p>My ~/.bashrc</p>
  
  <pre><code>export HTTP_PROXY=http://127.0.0.1:8123/
  export HTTPS_PROXY=http://127.0.0.1:8123/
  export http_proxy=http://127.0.0.1:8123/
  export https_proxy=http://127.0.0.1:8123/
  </code></pre>
  
  <pre><code>$ cat ~/.npmrc 
  proxy=http://127.0.0.1:8123/
  http-proxy=http://127.0.0.1:8123/
  https-proxy=http://127.0.0.1:8123/
  noproxy=localhost,127.0.0.1,192.168.,10.
  strict-ssl=false
  </code></pre>
  
  <p>node v12.14.1 npm v6.13.7</p>
  
  <p>How can I reduce the error?</p>
  
  <p>Thanks for any help!</p>