当前位置: 首页 > news >正文

贵阳市做网站的公司有哪些北京市住房和城乡建设厅

贵阳市做网站的公司有哪些,北京市住房和城乡建设厅,懒人图库网站源码,盐城网站建设hx1818目录 会话技术 Cookie Session JWT JWT生成 JWT校验 会话技术 会话 打开浏览器,访问web服务器的资源,会话建立,直到有一方断开连接,会话结束。在一次会话中可以包含多次请求与响应 会话跟踪 一种维护浏览器的方法 服务器需要…

目录

会话技术

 Cookie

Session

JWT

JWT生成

JWT校验


会话技术

会话 打开浏览器,访问web服务器的资源,会话建立,直到有一方断开连接,会话结束。在一次会话中可以包含多次请求与响应

会话跟踪 一种维护浏览器的方法 服务器需要识别多次请求是否来自于同一浏览器 以便在同一次会话的多次请求间共享数据

会话跟踪方案 

        客户端会话跟踪技术 Cookie

        服务端会话跟踪技术 Session

        令牌技术

 Cookie

优点  HTTP协议中支持的技术

缺点 移动端App无法使用Cookie

         不安全,用户可以自己禁用Cookie

        Cookie不能跨域(跨域 : 协议,IP/域名,端口中有不同的)

@Slf4j
@RestController
public class SessionController {@GetMapping("/c1")public Result cookie1(HttpServletResponse response){response.addCookie(new Cookie("login_username","awaw"));return Result.success();}@GetMapping("/c2")public Result cookie2(HttpServletRequest request){Cookie[]cookies = request.getCookies();for(Cookie cookie : cookies){if(cookie.getName() == "login_username" ){System.out.println("login_username" + cookie.getValue());}}return Result.success();}
}

Session

优点 存储在服务器 安全

缺点 服务器集群情况下无法直接使用Session

        移动端App无法使用Session

         不安全,用户可以自己禁用Session

        Session不能跨域

@Slf4j
@RestController
public class SessionController {@GetMapping("/s1")public Result session1(HttpSession session){log.info("HttpSession-s2:{}",session.hashCode());session.setAttribute("loginUser","tom");return Result.success();}@GetMapping("/s2")public Result session2(HttpServletRequest request){HttpSession session = request.getSession();log.info("HttpSession-s2{}:",session.hashCode());Object loginUser = session.getAttribute("loginUser");log.info("loginUser: {}",loginUser);return Result.success(loginUser);}
}

JWT

Json Web Token

定义了一种简洁的,自包含的格式,用于在通信双方以json数据格式安全的传输信息。由于数字签名的存在,这些信息是可靠的

 组成

        第一部分 header 头:记录令牌类型,签名算法等

        第二部分 Payload 有效载荷:携带一些自定义信息,默认信息等

        第三部分 Signature 签名:防止Token被修改,确保安全性。将header,Payload加入执行密匙,通过指定签名算法计算而来

 在pom.xml中引入JWT令牌依赖

        <dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>0.9.1</version></dependency>

JWT生成

@SpringBootTest
class SpringbootMybatisCrudApplicationTests {@Autowiredprivate EmpMapper empMapper;@Testpublic void testGenJwt(){Map<String,Object>claims = new HashMap<>();claims.put("id",1);claims.put("name","tom");String jwt =  Jwts.builder().signWith(SignatureAlgorithm.HS256,"awaw")//签名算法.setClaims(claims)//自定义内容(载荷).setExpiration(new Date(System.currentTimeMillis() + 3600 * 10000))//有效期.compact();System.out.println(jwt);}
}

JWT校验

JWT检验时使用的签名秘钥,必须和生成JWT令牌时使用的秘钥是配套的 

@SpringBootTest
class SpringbootMybatisCrudApplicationTests {@Autowiredprivate EmpMapper empMapper;@Testpublic void testParseJwt(){Claims claims = Jwts.parser().setSigningKey("awaw")//指定签名密匙.parseClaimsJws("eyJhbGciOiJIUzI1NiJ9.eyJuYW1lIjoidG9tIiwiaWQiOjEsImV4cCI6MTcwNDY0NjU4OH0.EKF6hnJvMExOBaJHE71OZmQBN0Sbcc3sH9FHkBq8sDY")//解析令牌.getBody();System.out.println(claims);}
}

http://www.yayakq.cn/news/276355/

相关文章:

  • 外贸soho建网站南通住房和城乡建设厅网站
  • 邢台网站优化wordpress加腾讯云cdn
  • 郑州市中原区建设局网站wordpress字体大小代码
  • 做汽配的外贸网站app开发工具手机版
  • 自己怎样用手机建网站贡井区建设局网站?
  • 六安网站设计公司wordpress th7
  • 企业网站对网络营销的意义牛商网官网
  • 网站建设合同图表版阿里云服务器的网站备案流程
  • 网站架构设计师工资水平wordpress html5 app
  • 做网站是干什么的百度站点管理
  • 网站聚合页一级做c爱片的网站
  • 泰安专业网站开发公司wordpress 多层边栏
  • 网站 相对路径做的网站没法用能否拒绝付工资
  • 企业网站打不开什么原因html什么意思
  • 网站添加google地图汽车网站建设预算
  • 企业网站设计需求文档沈阳市建网站
  • 领地免费网站程序汇编语言做网站
  • flask做网站工具昆明工程建设信息网站
  • 大型门户网站建设美丽揭阳seo网站管理
  • 开发商城网站开发模板网站的域名是什么
  • 贵州省建设银行网站如何开发自己的软件
  • 新竹网站凡客家具质量怎么样
  • 建设网站如何给页面命名免费的手机网站模板
  • 学校户网站建设方案鸿星尔克的网络营销方式
  • 网站 换图片可信网站认证图标
  • 网站管理强化阵地建设手机网站cms系统
  • 宁波江北区网站推广联系方式成crm网
  • 酒店网站的设计摘要视频链接生成器
  • 培训型网站建设重庆建设公司排名
  • 电子商务网站建设和推广论文苏宁易购官网商城