ant design pro对接SSO单点登录

2019-04-30  本文已影响0人  MinaLing

公司的SSO采用CAS机制,机制说明:https://www.jianshu.com/p/083c0597e7e0
ant design pro接入SSO时,也踩了一些坑
一、应用服务端
服务端使用了spring boot,spring boot跟CAS的整合可以参考文档:https://blog.csdn.net/jw314947712/article/details/54236216
二、前端
这里有几个坑需要注意:
1、ajax请求返回SSO登录页面,需要修改跳转模式为手动跳转。
2、由于SSO域名与前端域名不同,ajax请求结果并不会出现302返回码。
修改utils下面的request.js文件,设置跳转模式为手动跳转

const defaultOptions = {
    credentials: 'include',
    redirect: 'manual',
    mode: 'cors',
  };

然后在response里面拦截

const checkStatus = response => {
  if (response.type === 'opaqueredirect') {
    window.location.href='https://cas.XXX';
  }
  if (response.status >= 200 && response.status < 300) {
    return response;
  }
  const errortext = codeMessage[response.status] || response.statusText;
  notification.error({
    message: `请求错误 ${response.status}: ${response.url}`,
    description: errortext,
  });
  const error = new Error(errortext);
  error.name = response.status;
  error.response = response;
  throw error;
};
上一篇 下一篇

猜你喜欢

热点阅读