Вызовите угловое приложение с дополнительной информацией заголовка из другого домена - PullRequest
0 голосов
/ 03 мая 2019

Я работаю над решением для углового приложения со следующим сценарием.

1. Пользователь заходит на доменное имя "login.site1.com"
2. Учетные данные пользователя верны, поэтому браузер перенаправляет пользователя на доменное имя «angular-app.site2.com», где находится угловое приложение.

Итак, вопросы:
1. Как я могу перенаправить пользователя на страницу «angular-app.site2.com»? Это междоменный запрос.
2. Как приложение angular может обнаружить, что пользователь уже прошел аутентификацию на «login.site1.com»?

Я не смог найти ответы на вопросы. Однако я попробовал следующее.
1. Перенаправление с помощью jquery. Мне нужно, чтобы пользователь jquery jsonp. Я использую следующий код

$.ajax({
    type: "GET",
    url: url,
    crossOrigin: true,
    async: false,
    crossDomain: true,
    contentType: "application/json; charset=utf-8",
    xhrFields: { withCredentials: true },
    dataType: "jsonp",
    headers: { 'Authorization': spAuthData }
    jsonpCallback: "jsonpCallback",
    success: function (res) {
        func(res);
    },
    error: function (xhr, status, error) {
        func({ xhr: xhr, status: status, error: error });
    }
});

Я получаю сообщение об ошибке «jsonpCallback не был вызван», что объясняется тем, что угловое приложение не отвечает на вызов.
2. Как я уже сказал, я не знаю, как получить дополнительную информацию заголовка от вызова ajax. Я нашел библиотеку под названием ngx-cookie-service, но я не знаю, правильно ли это.

Спасибо за вашу поддержку.

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