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

网站 东莞长安软件开发网站开发培训

网站 东莞长安,软件开发网站开发培训,剁椒怎么做制作方法,制作网页的代码html注#xff1a;本文中Tomcat#xff0c;代表所有的Serlvet容器#xff0c;由于Tomcat非常流行#xff0c;所以用这个读者更加熟悉。 一、过滤器是什么#xff0c;有什么用 你完成了项目编写#xff0c;把它发布到网络上运行#xff0c;此时#xff0c;外部主机可以访问…注本文中Tomcat代表所有的Serlvet容器由于Tomcat非常流行所以用这个读者更加熟悉。 一、过滤器是什么有什么用 你完成了项目编写把它发布到网络上运行此时外部主机可以访问它这时会出现一些问题。 【注记你的项目为WP】 第一主机A是个安全专家测试自己写的脚本在一分钟内向WP发送十万次请求这会使正常用户卡崩溃甚至无法使用。 第二用户B访问你的项目发现在不登录的情况下就能购买你商店中的商品。这会使你遭受一定损失。 你必须为自己设置安全防护。 早期对于第二个情况最朴素的方法是用户每次操作时都必须输入账号密码这样能保证系统安全。 然而这不仅使得用户体验很差还会使代码量变多变复杂这种非业务逻辑的代码会影响正常开发。 随着开发思想的迭代开发者把安全行为抽离业务逻辑形成一道屏障—“防火墙”。 当然这是一种类比在Servlet容器中一切外部主机访问项目都要经过“过滤器” 这就是我们今天的主角。 身份验证、权限控制经典的工具jwt就需要在过滤器中使用。【当然在代码逻辑中也不是不行】 过滤器的作用对象是外部主机所以它默认不影响正常代码逻辑【也可以让它影响】 由于过滤器是项目门户需要在项目启动前就布置好恰好和Servlet容器运行的时间段类似所以Servlet容器内置了过滤器功能。 比如常用的Tomcat服务器就默认使用WebMVCConfigurer类的过滤配置。 二、Filter接口和WebMVCConfigurer接口的介绍 Tomcat的所有过滤行为都基于Filter接口。 Filter接口在实际上定义了一个过滤器应该有的所有行为。 而我们常用于解决跨域问题的WebMVCConfigurer过滤配置属于另一个过滤器分支。 虽然它与Filter没有父子关系但我猜测在Filter的子实现类里一定组合了WebMVCConfigurer的实现类。 否则我们不应该能够使用WebMVCConfigurer解决跨域问题。 WebMVCConfigurer中定义了Web开发常用的跨域、页面跳转等过滤。 Filter定义了最重要的3个方法 doFilter最重要的方法真正的过滤逻辑init初始化过滤前的准备doDestroy销毁过滤器后会自动调用 三、过滤器的部署 开发前后端项目我们常常会遇到跨域问题今天我们从它入手详解它的原理并解决它。 第一浏览器跨域策略 跨域问题的原因为保证安全浏览器不允许不同应用层协议、不同IP地址、不同端口之间的应用程序直接通信。举例 http://IP地址:端口号/资源 和 ftp:或者https 之间协议不同不允许跨域访问1.1.23.4 和 2.1.4.1 之间IP地址不同不允许后端项目127.0.0.1:8080 和前端项目127.0.0.1:5143之间端口号不同不允许 表面上跨域问题由浏览器引起使用postman、jmeter访问时似乎不会有问题。 然而浏览器对跨域问题只有标记作用即标记是否跨域了真正的跨域解决方案内置在Tomcat容器中。 第二跨域的成因 既然跨域方案在Servlet容器中又因为使用SSM框架开发项目时使用WebMVCConfigurer实现类作为默认过滤器所以成因就是该实现类默认不允许跨域。 第三跨域解决 我选用的是使用WebFilter注解表示一个过滤器使这个过滤器拦截所有的请求架空WebMVCConfigurer实现类的权力然后在新过滤器中解决问题。 注此方法要做2件事 使用WebFilter注解过滤器类该过滤器类实现Filter接口 完成后就可以重写3个方法 代码为 // 拦截所有请求 WebFilter(urlPatterns /*) public class FilterPermission implements Filter {// 初始化方法一般不用Overridepublic void init(FilterConfig filterConfig) throws ServletException {Filter.super.init(filterConfig);}Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {// 放行函数filterChain.doFilter(servletRequest,servletResponse);}// 销毁函数Overridepublic void destroy() {Filter.super.destroy();}这样就能粗略地解决跨域问题当然也带来了一些安全问题在此不赘述。 四、结语 我是蚊子码农如有补充或者疑问欢迎在评论区留言。个人的知识体系可能没有那么完善希望各位多多指正谢谢大家。
http://www.pierceye.com/news/168337/

相关文章:

  • 做网站客户需要提供的资料梧州网站建设推荐
  • 网站商城建设实训心得网络推广有用吗
  • 考试网站建设房价2024年暴跌
  • 北京网站seo价格建设教育培训的网站
  • 怎样做网站手机和电脑通用木马工业设计公司
  • 榆林市建设局官方网站ppt中网站布局图怎么做
  • 网站视频插件代码如何创建自己的软件
  • 如何免费建造网站电商网站建设哪家好
  • ps做网站首页设计教程郑州seo优化外包热狗网
  • 给网站增加功能怎么做360搜索关键词优化软件
  • 如何做公司网站空间南昌做网站的公司哪个比较好的
  • 美容网站开发网络营销的功能有哪些
  • 推广自己的网站需要怎么做做政协网站的目的是什么
  • 综合性电子商务网站有哪些商城系统软件开发
  • 网站服务器解决方案企业门户网站管理要求
  • 南京网站开发南京乐识专注岳阳网站建设网站
  • 做一直播网站要多少钱淘宝客如何建设推广网站
  • 网站模板内容怎么添加图片不显示菏泽做网站
  • 个人网站备案条件盐城做网站哪家好
  • 小型网站开发教程wordpress自适应小说
  • 来宾网站制作公司网站提交至google
  • 唐山网站建设怎么样专业的个人网站建设哪家
  • 成品网站w灬源码在线看重庆网站制作设计
  • 有没有在家做的兼职网站网站模板如何删除
  • 建站公司用的开源框架家纺网站模板
  • 做情网站甘肃省城乡城乡建设厅网站
  • 开发一个网站做公司内部用一个网站能用asp c
  • 设计师服务平台鱼巴士有哪些网站阜宁网站设计
  • 企业网站开发所需要的模块郴州网警
  • 案例网站网页设计实训报告结束语