乐优商城项目总结day(17)
授权中心
cookie设置问题
认证与授权采用jwt无状态的方式,使用私钥生成token后将token写回cookie。但是设置cookie是在授权微服务进行写回的,会经过nginx与zuul的反向代理,在两次反向代理的过程中request的host和url均发生了变化。
// 将token写入cookie
CookieUtils.newBuilder(response).httpOnly().request(request).build(cookieName, token);
写入cookie时需要对cookie的Domain进行设置,Domain为此次cookie设置的作用域,需要从request的路径信息中获取。
/**
* 得到cookie的域名
*/
private String getDomainName(HttpServletRequest request) {
String domainName = null;
String serverName = request.getRequestURL().toString();
if (serverName == null || serverName.equals("")) {
domainName = "";
} else {
serverName = serverName.toLowerCase();
serverName = serverName.substring(7);
final int end = serverName.indexOf("/");
serverName = server