How to resolve CORS errors by using Angular Proxy?
First of all, there is one very important question for all that what is proxy and why should we use this? Also, one more question would be how can we implement proxy in our angular app? So here, I will describe all the details in this article and will also show you simple and easy ways to overcome this CORS issue using the proxy configuration in our angular application with an example.
When we integrate API’s into our angular application on our local development environment then we face some CORS policy issues. Due to this CORS Policy issue or we can also call it cross origin issue, we fail to implement such API’s. Please check the below-given screenshot for your reference –
As you can see in the above screenshot, we are trying to http GET request in above test URL https://reqbin.com/echo/get/json as follows.
Please read carefully and follow the proper steps that I have mentioned below to fix this CORS issue.
Firstly create a
proxy.conf.json file in the
src folder in your angular application.
Now we have to create the proxy configuration for API endpoints. So add your proxy configuration in your
proxy.conf.json file as given in the below format-
Definition of parameters is given below-
"/echo” is your API Path.
"target"is your domain name where your API’s are hosted.
"secure"is boolean type parameter, if your domain has SSL then you should use true else you should use false as value.
"changeOrigin"should be true if your backend is not hosted on localhost server.
logLevel"is used to check whether proxy is working or not. Proxy log levels are info (the default), debug, warn, error, and silent.
Now you have to put
proxy.conf.json path in
proxyConfig option in angular.json file just like mentioned below.
Now finally we have to update our API path in our service file. Before Proxy we were using
https://reqbin.com/echo/get/json URL. But now we do not want to write domain name here in URL because we have already configured domain name
https://reqbin.com for the route of
"/echo" in our
Finally, you have to restart your project with the
ng server command and if we look at the Chrome Dev Tools network tab, we can see that the request came from
And we will see that the API is working on local environment using Proxy config and CORS error has also gone.
Note: This is just a fix for development. If you have CORS issue in production, the problem likely has to do with the server configuration!