Angular CLI fails on downloading Angular 6 dependencies thru proxy behind - node.js

I've successfully installed Angular CLI using NPM behind proxy with Fiddler.
But now I'm facing problem when using 'ng new' command of Angular CLI.
It Always fails to download some dependencies that gives me E502 error.
here is the configuration I used for NPM:
npm config set proxy=http://myproxyserveraddress:8888/
npm config set https-proxy=http://username:password#myproxyserveraddress:8888/
npm config set strict-ssl=false
npm config set registry=https://registry.npmjs.org/
for fiddler, I put check on the Auto Authenticate on the Rules menu.
I also tried the other NPM configurations that was posted here but no luck and those instructions looks outdated now.
Is there an updated configuration setting for creating new project in Angular CLI thru proxy behind?

npm config set proxy http://username:password#myproxyserveraddress:8888/
I think you need set the usn and password in both http and http. And, the character between "proxy" and "http" is a "space" not "=" . Or you can check the username. Ex: my usn in company is xxxx\xxxxxx

Related

How to set npm config set proxy on npm start

Hi I'm trying to set a proxy every time I run a specific project with my npm run dev command.
I have something like https://www.npmjs.com/package/dotenv setting up my environment variables but I'm also looking to automating setting my
npm config set proxy http://proxy.example.com:1337
npm config set https-proxy https://proxy.example.com:1337
Does anyone have any solutions for this?
Note That I only want this for my development and note production.
For setting proxy and other configuration for npm just type the following command in the console
npm config edit
this command will open the .npmrc file, in that file set the proxy and other setting related npm
hope it will works.
npm config set proxy http://proxy.example.com:1337 will set the proxy for downloading the packages from npm repo.
when you run npm run dev, what is running is your app which is invoked by npm on node.js on your OS, so you need to set a proxy for your app or your OS.
System level proxy
Linux
https://askubuntu.com/questions/583797/how-to-set-a-proxy-for-terminal
Windows:
set http_proxy=socks5://127.0.0.1:1080
set https_proxy=socks5://127.0.0.1:1080
set ftp_proxy=socks5://127.0.0.1:1080
// unset
set http_proxy=
set https_proxy=
set ftp_proxy=
App level
I can't do anything about that.
Webpack dev server
I believe this is what you need, if you are using webpack dev server.
https://github.com/webpack/webpack-dev-server/blob/master/examples/general/proxy-simple/webpack.config.js

npm rollbackFailedOptional error when install any package

I have a problem when installing any npm packages. here is my error:
rollbackFailedOptional: verb npm-session xxxxxxxxxxx
for resolving this I do some stuff but I still get the same error.
I put registry=http://registry.npmjs.org/ in .npmrc file in my user folder and also run following commands:
npm config rm proxy
npm config rm https-proxy
I try to solve the problem in node 8.11.1 and node 10.1.0 and my npm version is 5.6.0.
Why this problem occurs and how can resolve that?
Update:
npm config list:
; cli configs
metrics-registry = "http://registry.npmjs.org/"
scope = ""
user-agent = "npm/5.6.0 node/v8.11.1 win32 x64"
; userconfig C:\Users\me\.npmrc
https-proxy = "https://username:password#proxy.company.com:6050/"
proxy = "http://username:password#proxy.company.com:6050/"
registry = "http://registry.npmjs.org/"
; builtin config undefined
prefix = "C:\\Users\\me\\AppData\\Roaming\\npm"
; node bin location = C:\Program Files\nodejs\node.exe
; cwd = C:\Users\me
; HOME = C:\Users\me
; "npm config ls -l" to show all defaults.
Can you try enter this and then re run:
npm config set registry http://registry.npmjs.org/
I've tried almost all methods posted in various forums like stackoverflow, github-issues etc.. but nothing seemed to work.
Here are the commands I've executed in order which I encourage you to try because it worked for many people (but not me):
npm config rm proxy
npm config rm https-proxy
npm config set https-proxy https://username:password#proxy.company.com:6050
npm config set proxy http://username:password#proxy.company.com:6050
npm config set registry http://registry.npmjs.org/
And then when trying to install the package npm install -g express - it failed.
However, when I tried to run npm install npm#latest -g it miraculously executed and installed fine!
Then running npm install -g express again worked perfectly fine too.
TL;DR: updating npm to the latest version solved the issue (currently 6.0.1)
I am installing npm package behind corporate proxy. following steps resolved the issue for me -
Remove http and https proxy - npm config rm proxy and npm config rm https-proxy
Set registry - npm config set registry http://registry.npmjs.org/
Set http and https proxy - npm config set proxy yourCorporateProxyAddress:port ,
npm config set https-proxy yourCorporateProxyAddress:port
Install package - npm install packageName
I solved this problem by setting the proxy property of config.
The most likely reason you might be facing this problem is if you are behind a proxy.
You may follow the following steps to solve the issue
Type:
npm config get proxy
If you get null. It means the proxy is not set.
Go to Internet Explorer->Tools->Internet Options-> LAN Settings
Here you would find your proxy address and port under proxy server. If you have your username and password then do the following
npm config set proxy http://your-username:your-password#Proxy-address:port-number
After this you can use npm install.
I was getting same error in user command prompt then tried in PowerShell as an admin and it worked.
Run the following commands in Windows PowerShell as Administrator:
npm config set https-proxy https://username:password#proxy.company.com:6050
npm config set proxy http://username:password#proxy.company.com:6050
config set registry http://registry.npmjs.org/
I had resolved this identical issue by pointing the npm to the correct proxy when using a corporate machine. NO ADMIN REQUIRED!!!
Here are my steps:
Obtain the correct proxy by following these steps here! Copy/paste the proxy address into notepad. You will use this same proxy to set both the 'proxy' and 'proxy-https' params in the next step.
Execute the following 2 commands in your command window by replacing <contents> below with proxy address obtained in previous step:
npm config set proxy http://<proxy-server-url:port>
npm config set https-proxy http://<proxy-server-url:port>
NOTE: I ommitted 'username' and 'password' fields from the 'http://<username><password>#<proxy-server-url:port>' template which according to the source should work 9 out of 10 times, and worked perfectly for me.
Navigate to your project folder from the command line and execute 'npm install <package name(s)>'. The installation should be successfull.
first this
npm config rm proxy
npm config rm https-proxy
then this
npm config set registry https://registry.npmjs.org/
then Install package
npm install packageName
PS: be sure to check if your internet connection is correct.
I had the same issue!
Reinstalling the latest 32-bit nodejs worked for me.
Just to note, I don't have any proxy on my network. Sometimes, when I have this problem I reconnect to my wifi, which also works sometimes.
I had the same issue while trying to install from Github. The issues was because of bad usage of the scripts in package.json and their hooks.
I had same problem trying to install any npm package.
Solved by adding some proxy config
Go to Users->"yourUser"-> Open .npmrc with a text editor -> add those two lines
https-proxy=http://username:password#proxyUrl:port/
proxy=http://username:password#proxyUrl:port
Modify username and password, setting your user information.
Modify proxyUrl and port according to your needs
That worked for me!

npm install Error: rollbackFailedOptional

When I try npm install new packages it shows me this error:
rollbackFailedOptional: verb npm-session 585aaecfe5f9a82
node --version
8.4.0
npm --version
5.3.0
# first this
> npm config rm proxy
> npm config rm https-proxy
# then this
> npm config set registry https://registry.npmjs.org/
solved my problem.
Again: Be sure to check whether you have internet connected properly.
Try this
npm config rm proxy
npm config rm https-proxy
In my case I had to edit the .npmrc directly and add the proxy settings manually.
proxy=http://yourorganizationproxy.com:8080
https-proxy=http://yourorganizationproxy.com:8080
Hope this helps someone.
The cause for this might be your current NPM registry. Try to check for a .npmrc file. These can be at various locations:
per-project config file (/path/to/my/project/.npmrc)
per-user config file (~/.npmrc)
global config file ($PREFIX/etc/npmrc)
npm builtin config file (/path/to/npm/npmrc)
Within these there can be something like
registry=https://mycustomregistry.example.org
which will take priority over the default one (http://registry.npmjs.org/). You can delete this line in the file or use the default registry like that:
npm <command> --registry http://registry.npmjs.org/
Most likely to be npm registry cannot be reached by npm. Check npm proxy configuration
I had exactly the same issue on Windows Server 2008 R2. I suspected Internet Explorer's Enhanced Security Configuration at first but after turning that off with no success the issue turned out to be that npm was not configured to use my corporate proxy connection to the internet.
It turns out that npm does not use the proxy settings in effect via Internet Options > Connections tab > LAN settings where the server is set to 'Automatically detect settings'. Being set to automatically detect settings does not guarantee that a proxy is indeed being used, it just means that Windows will automatically configure proxy settings for Internet Explorer if it finds a special'wpad.dat' file at http://wpad.[yourdomain.com]/wpad.dat.
You can test whether a wpad.dat file is in use in your organisation by typing the following into a web browser.
http://wpad.[yourcompany.domain]/wpad.dat
If no file is available then it is likely you are not using an organization-wide proxy. If one does get returned to the browser then...
Toward the bottom of this file, you should see a line saying
PROXY <host:port>;
It might be repeated if you have multiple proxies available. The host and port are needed in order to tell npm to use the proxy settings like so:
npm config set proxy http://[host]:[port]
and
npm config set https-proxy http://[host]:[port]
For example if your proxy is at my.proxy.com on port 8080 then the npm commands would be:
npm config set proxy http://my.proxy.com:8080
npm config set https-proxy http://my.proxy.com:8080
Once I had told npm which proxy to use all started working in I was able to run the install commands without a problem.
Thanks to the following post for help with the wpad file discovery.
In my case I had my npm set registry set to https://nexus, use:
npm config delete registry
This will revert to its default state.
I tried following options to fix this issue and it worked.
Uninstall Node.js version 8.
Install Node.js version 6.11.4
Use the registry option along with command to install any package.
For example to install express I used following command.
npm install express --registry http://registry.npmjs.org/
or
npm install express -g --registry http://registry.npmjs.org/
If you want to install locally in any specific folder then use below command. Below command will install express on path C:\Sample\Example1 .
C:\Sample1\Example1> npm install /Sample/Example1 express --registry http://registry.npmjs.org/
Note: If you are installing locally in a specific location then first go to that directory using command and then run above command. If you are not inside that directory and giving only path in command that will not work.
If you get package.json missing error then run below command before installing package locally
C:\Sample\Example1> npm init
above command will create package.json file. No need to provide any data. just hit enter.
Note: If you are behind a firewall then you may need to set a proxy.
Hi I'm also new to react and I also faced this problem after so many trouble I found solution: Just run in your command prompt or terminal :
npm config set registry http://registry.npmjs.org/
This will resolve your problem.
Reference link: http://blog.csdn.net/zhalcie2011/article/details/78726679
Make sure you can access the corporate repository you configured in npm is available.Check you VPN connection.
Else reset it back to default repository like below.
npm config set registry http://registry.npmjs.org/
Good Luck!!
The following commands resolved my issue:
npm config set proxy http://yourproxyurl.com:8080 (you need to enter your or your company proxy URL and 8080 should be replaced by your proxy port)
npm config set https-proxy http://yourproxyurl.com:8080
I had the same effect creating a react app with PhpStorm. And then at the end it just says done. Running the same command in the terminal gave me detailed errors. The project folder I've created was named react which seems to be a no-go.
Make sure your project folder is not named react.
If you have access to the registry but the error is still occurred nothing mentioned above wouldn't work. I noted that this problem is only applicable for local project's installation (i.e. if you use -g to global install everything is working fine).
What's resolved the problem for me: just remove an entry regarding a package you're going to install from a project's package.json file. After that next call to npm will work and install the package successfully.
Seem this bug is not fixed yet [1]. Some people get worked, some people not. I also get not worked.
I tried clear cache with command: npm cache verify then run install command again. I got worked.
[1]. https://github.com/npm/npm/issues/17246
I had the same issue. But it can run properly with switching from company's internal network to visitor network.
I set two system environment variables -
HTTP_PROXY = <_proxy_url_>
HTTPS_PROXY = <_proxy_url_>
This actually worked for me.
In some rarer occasions, check that the project can be built using regular npm commands. I ran into one that is configured to work with bower, so bower install <github_url> works while npm install <github_url> gives that unhelpful cryptic error message on all platforms...
While installing the Angular Command line tool (CLI), If you are getting Rollback Error then it may be occurring due to your network is connected with your Client Network or your Company Network where you are working on.
So Please try to install CLI in your public network (or Your Mobile's hotspot Network) then you would definitely get CLI installed.
Solution:
The default value of ‘proxy’ and ‘https-proxy’ key of npm config is NULL. After doing some more R & D then I tried to set the proxy setting value to above key (this solution works in my scenario).
Also, the same proxy settings need to be applied in IE browser Internet Settings >> Settings >> LAN settings.
Conclusion:
In corporate/some environment the proxy is a somewhat mandatory setting otherwise npm install will not work.
Issue on GitHub: https://github.com/SharePoint/sp-dev-docs/issues/3266
You can refer blog for detailed information
https://blogs2share.blogspot.com/2019/01/spfx-environment-setup-error.html
You can resolve the issue by looking if your network has any proxies, that is prohibiting the download process. My company's network had a firewall enabled, which was causing the issue for me. So I had to switch to an un-secure network (probably a hotspot from your mobile network), and that worked for me.
Mine was due to McAfee firewall.
It is set to Ask mode, so should have popped up a prompt to ask for internet connection, but it didn't!
Going into McAfee and (temporarily!) disabling the firewall allowed me to install.
I've already had the proxies set as described above and it was working until today. Then it turned out that now I need "http://" in front of my proxy address: "http://{proxyURL}:{proxyPort}". Then it finally worked.
Struggled with this issue for some time before figuring it out.
I'm using High Sierra (10.13.6)
Uninstalled and re-installed node and nvm multiple times - using the installer.pkg, HomeBrew, and then using the command line. IMO, the command line works the best.
I followed these steps:
1. Ran npm config ls -l
2. Checked that the value for globalconfig was $<installpath>/.nvm/versions/node/v12.16.3/etc/npmrc But when I tried to get to this path in the Terminal, it gave me No such file or directory
So I
3. created the folder etc, created the npmrc file and added this line in it.
registry = "https://registry.npmjs.org/"
I do not have the ~/.npmrc file in my $HOME
Then
4. I re-ran the npm install command.
Note that this still threw the rollbackFailedOptional: verb npm-session error, but this time it completed, though with a different error.
You could try these steps and see if it works.
For those who are curious, it threw a Response timeout while trying to fetch https://registry.npmjs.org/<package> (over 30000ms) error, so I added the timeout = "60000" to the /etc/npmrc file (as found on another Stackoverflow thread), and tried again. This worked for me.
Hope this helps!
Try this all command answered here to solve the problem https://stackoverflow.com/a/54173142/12142401
if problem persists
Do the following Steps
Completely Uninstall the nodejs checkout this answer for complete uninstallation of nodejs https://stackoverflow.com/a/20711410/12142401
Download the updated nodejs setup from their website
Install it in any drive but not on previously installed drive like if you installed in C drive then install in D,S,G Drive
Run your npm command it will completely work fine
If you use vpm as I do, try turn it off a sec, at least that's my problem
I had same problem.
I deleted files in my Mac
"/usr/local/bin/npm", "/usr/local/bin/node"
and deleted folder
"/usr/local/lib/node_modules"
and then installed the current latest feature version of node. then problem solved.
When downloaded LTS version, it shows the same problem.
So, try installing different versions of node and deleting old one.
Hi,
For people that use yarn package. Just go to the project folder that you are having this issue with. Let's say the project's folder name is chatApp:
cd chatApp
And then if you have already done yarn or yarn install then delete the node_modules folder and run the below command or if you haven't done yarn install, only run the blow command:
yarn cache clean
Once yarn has successfully cleaned the cache, run the below command:
yarn config set registry https://registry.npmjs.org/
That's it, this should fix the issue ✔️.
try this:
delete all file in folder: %APPDATA%\npm-cache\_locks
For Windows:
Run the installer again and choose to 'Repair' the installation
Worked for me
Try this. It worked fine for me
npm install /your_floder_location package_name --registry
http://registry.npmjs.org/
Below is the exact command for me for installing vue-router package in my laravel project (my project name vue_laravel)
aslam004:vue_laravel $ npm install
/var/www/html/projects/vue_laravel vue-router --registry http://registry.npmjs.org/
Good luck
use sudo before your command as
sudo npm install

npm ERR! network getaddrinfo ENOTFOUND

I am getting npm ERR! network getaddrinfo ENOTFOUND error while trying to install any package using NPM. I know there are numerous threads on the same issue but I could not find any thread which can help me.
I have set the proxy & I think its something to do with proxy not being set correctly\not using the correct url.
npm config set proxy http://proxy.company.com:8080
npm config set https-proxy http://proxy.company.com:8080
Is there any way to check the URL I am using while setting proxy is correct? Are there any steps I need to take in order rectify this issue?
Maybe it's because the proxy do not stand for https.
What I do is clear the proxy content of ~/.npmrc, or use
npm config delete proxy
What's more, nrm is recommended for this problem.
I was setting proxy as
npm config set http_proxy=http://domain:8080
instead of using the correct way
npm config set proxy http://domain:8080
Instead of setting the proxy usingnpm config set http_proxy=http://address:8080 go to ~/.npmrc and remove the proxy config. This resolved my issue.
I also faced this error but I was not working behind a proxy server at the moment so using npm config set proxy=http://address:8080 couldn't help and ~/.npmrc didn't contain any proxy setting either. The solution in my case was just to restart my computer.
I got the exact same error and this is what i did.
npm config get proxy
and it returned "null"
Opened "C:\Users\Myname.npmrc" in a notepad and made some changes. This is how my .npmrc file looks now
http-proxy=http://proxyhost/:proxyport
strict-ssl=false
registry=http://registry.npmjs.org/
The solution which worked for me:
Delete proxy: npm config delete proxy
Check npm config get proxy which should return null
Now, check if you are able to install the package. If not working, try manually editing the config, type: npm config edit, remember you are in VI editor.
Add ; before(for commenting out):
npm config set proxy http://proxy.company.com:8080
npm config set https-proxy http://proxy.company.com:8080
Save and exit the file :x
Now, try installing the packages. It should work.
does your proxy require you to authenticate? because if it does, you might want you configure your proxy like this.
placeholder names.
username is a placeholder for your actual username.
password is a placeholder for your actual password.
proxy.company.com is a placeholder for your actualy proxy
*port" is your actualy port the proxy goes through. its usualy 8080
npm config set proxy "http://username:password#proxy.company.com:port"
npm config set https-proxy "http://username:password#proxy.company.com:port"
It happens due to proxy errors:
try this in cmd
npm config get proxy
if this is not null, then go to
c/users/computerName/.npmrc
open this in notepad
now clear the proxy line completely
try the above cmd
if it is null
then install angular
npm i -g #angular/cli
I had this issue in my Arch Linux distro with npm 14.3.0 (w/ npm 6.14.5). I simply deleted the ~/.npm directory and tried again and this time it worked.
For me removing the ~/Users/.npmrc from the folder helped.
I had incorrectly typed in the address as
http://addressOfProxy.8080
instead of
http://addressOfProxy:8080
(Notice the colon before the port number 8080.)
First I check whether proxy is set for me or not using this :
npm config get proxy
It returned null then I run this command
npm config set strict-ssl=false
It disable strict-ssl for that cmd session.
You can see complete list of config using this
npm config list ls -l
Step 1: Set the proxy
npm set proxy http://username:password#companyProxy:8080
npm set https-proxy http://username:password#companyProxy:8080
npm config set strict-ssl false -g
NOTES: No special characters in password except # allowed.
for some reason my error kept pointing to the "proxy" property in the config file. Which was misleading. During my troubleshooting I was trying different values for the proxy and https-proxy properties, but would only get the error stating to make sure the proxy config was set properly, and pointing to an older value.
Using, NPM CONFIG LS -L command lists all the properties and values in the config file. I was then able to see the value in question was matching the https-proxy, therefore using the https-proxy. So I changed the proxy (my company uses different ones) and then it worked. figured I would add this, as with these subtle confusing errors, every perspective on it helps.
Just unset the proxy host using :
unset HOST
This worked for me.
Make sure to use the latest npm version while installing packages using npm.
While installing JavaScript, mention the latest version of NodeJS. For example, while installing JavaScript using devtools, use the below code:
devtools i --javascript nodejs:10.15.1
This will download and install the mentioned NodeJS version. Try installing the packages with npm after updating the version. This worked for me.
Take a look at your HTTP_PROXY and HTTPS_PROXY environment variables.
I thought mine were set correctly, as http://username:password#proxyhost:proxyport, but it turned out that they were actually causing the problem! After deleting those variables, and restarting the commant prompt, the npm commands worked again.
Well, everybody giving their answer so I thought I write too.
I am having the same proxy issue as all others. To solve this I tried many solutions but it did not work.
Search .npmrc file name in C:\Users\your_username drive and than add this line:
http://proxy.company.com:8888
I did only this and my is solved.
Step 1: Check whether proxy is set for you or not
npm config get proxy
Step 2: If it returned null and you also don't want any proxy, go to ~/Users/.npmrc
Open the file and make sure it has the following written:
registry=http://registry.npmjs.org/
Disable strict-ssl for cmd session
npm config set strict-ssl=false
Try to npm install now
P.S Now if get proxy didn't return null check if the proxy is correct or else set it with
npm config set proxy http://proxy.example.com:6500
in my case, the error was I wasn't being consistent in usage of package manager, previously I installed my all packages with yarn and now I was using npm to install moment-timezone package and was facing this error, when I tried to install the package with yarn it was done successfully with command yarn add moment-timezone
Had the same issue but non of the above help then I tried this:
ipconfig /flushdns
ipconfig /renew
After that everything worked as expected.
I hope it helps you guys
The solution which worked for me:
Delete proxy: npm config delete proxy. Also npm config delete https-proxy
Check
npm config get proxy
npm config get https-proxy
This should return null
Now, check if you are able to install the package.
I use WSL with Ubuntu distro. Had the same issue and none of the above solutions worked.
Ran the following command, then everything started working,
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null
For me, my wifi network settings had DNS set to 8.8.8.8 I just removed that and ran npm i again and it worked!
go to the directory C:\Users\username and delete the npmrc file
this solved my issue
I was having some proxy configuration in my {$HOME}/.npmrc file.
Clearing it helped.
If your proxy config is fine, sometimes the problem can be a deprecated package-lock.json file, therefore it redirects to a non-existing artifactory, npm registry.
Try to delete the package-lock.json and try npm i again.
strict-ssl=false
proxy = http://ip_address_of_proxy:8088
https-proxy = https://ip_address_of_proxy:8088
registry = http://registry.npmjs.org/
This solution worked for me:
npm set https-proxy http://username:Password#proxyhost/:proxyport
npm config set strict-ssl false -g
Try to install now (e.g. npm i tailwind -g)

phantomjs npm install fails behind proxy

Trying to install PhantomJS via an npm wrapper while behind the corporate proxy. I had already set the http_proxy and https_proxy environment variables so that npm itself would be able to communicate with the registry:
export http_proxy=my-company-proxy.com:80
export https_proxy=my-company-proxy.com:80
But when it came to the node install.js stage of phantomjs, I got a Protocol not supported error:
http.js:1711
throw new Error('Protocol:' + options.protocol + ' not supported.');
^
Error: Protocol:my-company-proxy.com: not supported.
The problem was that the phantomjs npm wrapper code assumes that the proxy info is a complete url, not just a hostname. This resolves the issue:
export http_proxy=http://my-company-proxy.com:80
export https_proxy=http://my-company-proxy.com:80
npm, git, etc work fine with either format, but for this particular package it needs HTTP_PROXY to have a full URL.
UPDATE: this related issue has been resolved and now it can use the same configuration system as npm itself (e.g. if you used npm config command) rather than relying on environment variable.
This is what worked for me.
Open the terminal as an administrator
Navigate to your project folder and enter the following commands
sudo npm config set proxy http://proxy_host:port -g then
sudo npm config set https-proxy http://proxy_host:port -g
Hope this works for you. Good luck.

Resources