我正在以下情况下为角度应用开发解决方案。
1.用户登录域名“ login.site1.com”
2.用户凭据正确,因此浏览器将用户重定向到角度应用程序所在的域名“ angular-app.site2.com”。
所以问题是:
1.如何将用户重定向到“ angular-app.site2.com”页面?这是一个跨域请求。
2. angular应用程序如何检测到用户已经在“ login.site1.com”上进行了身份验证?
我找不到问题的答案。 但是我尝试了以下操作。
1.通过jquery重定向。我需要用户jjson 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的库,但我不知道这是否正确。
感谢您的支持。