Дело скорее всего не в ангуляре, а в заголовках, которые вы настраиваете, или в настройках сервера.
Зачем у вас это на клиенте?
headers.append("Access-Control-Allow-Origin", "*");
headers.append("Access-Control-Allow-Methods", "GET, POST, OPTIONS, PUT, PATCH, DELETE");
headers.append("Access-Control-Allow-Headers", "X-Requested-With,content-type");
Клиент автоматически добавляет заголовок
Origin. Access-ы должен сервер отдавать.
А такой заголовок
headers.append('Content-Type', 'application/json');
в
GET запросах вроде не нужен
Почему вы отсылаете такой запрос
this.http.get('localhost:6060/api/v1/userinfo'
А в ответе совсем другой url
XMLHttpRequest cannot load localhost:6060/api/v1/auth.
Если идет
OPTIONS запрос сначала, то нужно убедиться, что сервер разрешает такие запросы. Я на днях собирал проект Angular2 + сервер на openserverе и именно с такой проблемой столкнулся, Openserver по умолчанию запрещает OPTIONS запросы, после включения всё заработало.
Поэкспериментируете, отдавайте на сервере.
w.Header().Set("Access-Control-Allow-Methods", "*")
w.Header().Set("Access-Control-Allow-Headers", "*")
Уберите ненужные заголовки на клиенте. А еще лучше - поставьте
Postman и там поэкспериментируйте.
Ну и конечно в
chrome во вкладке
Network очень легко проверить все заголовки