首页 文章 精选 留言 我的

精选列表

搜索[类型安全],共10000篇文章
优秀的个人博客,低调大师

Vue 路由守卫安全

关注公众号,设置为'星标' ,更多精彩内容,第一时间获取 导读大纲 路由守卫分类 全局路由守卫 单个路由守卫 组件路由守卫 路由守卫执行的完整过程 路由守卫分类 全局路由 单个路由独享 组件内部路由 每个路由守卫的钩子函数都有 3 个参数: to : 进入的目标路由 from : 离开的路由 next : 控制路由 在跳转时进行的操作,一定要执行。 它有 4 个行为: next() : 钩子都执行完了,进入到下一个路由当中。 next(false): 中断路由进入下一个路由。 next('/') : 根据你路由跳转判断条件来进入对应的路由, / 为路由的 path 。 next(new Error) : 中断路由跳转,错误会被传递给 router.onError() 注册过的回调。 全局路由守卫 beforeEach(to,from, next) beforeResolve(to,from, next) afterEach(to,from) 全局路由直接挂载到 router 实例上。 //全局验证路由constrouter=createRouter({history:createWebHashHistory(),routes});//白名单,不需要验证的路由constwhiteList=['/','/register']router.beforeEach((to,from,next)=>{if(whiteList.indexOf(to.path)===0){//放行,进入下一个路由next()}elseif(!(sessionStorage.getItem('token'))){next('/');}else{next()}}) beforeEach 使用场景 「路由跳转前触发」 作用 「常用于登录验证」 beforeResolve 使用场景 「在 beforeEach 和 组件内beforeRouteEnter 之后,afterEach之前调用。」 afterEach 使用场景 「发生在beforeEach和beforeResolve之后,beforeRouteEnter之前。」 「路由在触发后执行」 单个路由独享 它只有一个 钩子函数, beforeEnter(to,from,next) beforeEnter 使用场景 「在beforeEach之后执行,和它功能一样」 ,不怎么常用 {path:'/superior',component:Superior,meta:{icon:'el-icon-s-check',title:'上级文件'},beforeEnter:(to,form,next)=>{}} 组件路由守卫 特点: 组件内执行的钩子函数 钩子函数: beforeRouteEnter(to,from,next) beforeRouteUpdate(to,from,next) beforeRouteLeave(to,from,next) beforeRouteEnter 使用场景: 路由进入之前调用。 不能获取组件 this 实例 ,因为路由在进入组件之前,组件实例还没有被创建。 执行顺序 beforeEach 和独享守卫beforeEnter之后,全局beforeResolve和全局afterEach之前调用. beforeRouteUpdate 使用场景: 在当前路由改变时,并且该组件被复用时调用,可以通过this访问实例。 当前路由query变更时,该守卫会被调用。 beforeRouteLeave 使用场景: 导航离开该组件的对应路由时调用,可以访问组件实例this 路由守卫执行的完整过程 导航被触发 执行 组件内部路由守卫: beforeRouteLeave 执行 全局路由守卫 beforeEach 在重用组件内部路由守卫钩子 beforeRouteUpdate 执行 路由中的钩子 beforeEnter 在被激活的组件里调用 beforeRouteEnter 执行 全局的 beforeResolve 守卫 。 执行 全局的 afterEach 钩子 beforeCreate created beforeMount mounted 执行 beforeRouteEnter的next的回调 ,创建好的组件实例会作为回调函数的参数传入。 React Hook | 必 学 的 9 个 钩子 Vue权限路由思考 Vue 组件通信的 8 种方式 MYSQL常用操作指令 TypeScript学习指南(有PDF小书+思维导图) 原创不易,素质三连 本文分享自微信公众号 - 前端自学社区(gh_ce69e7dba7b5)。如有侵权,请联系 support@oschina.cn 删除。本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

优秀的个人博客,低调大师

postgresql 用户安全配置

一、配置说明: 角色名称:user01 1.user01权限说明: 连接test数据库,未授权时无法连接其它数据库; 在指定schema,建立\查看\删除表,查看schema中对象; 2.其它普通用户: 无法连接test数据库及schema(sales)中对象,需要授权; 二、操作步骤: instance(实例级): role(角色) $ psql postgres postgres=# CREATE ROLE user01 LOGIN NOSUPERUSER NOCREATEDB; 2.database(数据库级): CREATE(schemas) and CONNECT(database) $ psql postgres postgres=# CREATE DATABASE test; postgres=# REVOKE ALL ON DATABASE test FROM public; -- 禁止其它普通role连接test postgres=# GRANT CONNECT ON DATABASE test TO user01; 3.schema(架构级): CREATE(put object into schema) USAGE (allow us to actually look into a schema and see which objects are present). $psql test test=# REVOKE ALL ON SCHEMA public FROM public;-- 其它普通role无法连接test test=# CREATE SCHEMA sales; CREATE SCHEMA test=# GRANT CREATE,USAGE ON SCHEMA sales TO user01; -- user01 可以在sales中建立、查看对象 GRANT test=# \q $ psql test -U user01 test=> CREATE TABLE sales.t_sales (id int4); CREATE TABLE 4.table(表级): grant 默认user01创建、drop表和DML表内容 5.column(列级):grant 默认user01创建、drop表和DML列内容 本文转自 pgmia 51CTO博客,原文链接:http://blog.51cto.com/heyiyi/1871200

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册