1.最近做的vue项目
1.1 用了什么技术
1.2 项目里有哪些内容
1.3 登录流程
- 1.表单验证用户输入的用户名和密码,非空验证和长度验证
- 2.请求登录接口,传递用户名和密码,根据后端返回的状态码,判断是否登陆成功
- 3.登陆成功的话把用户名存到localstorage中,如果用户在登陆时选择了记住密码,再把密码也存下来。
同时将后端返回的用户信息也存下来,分别存到cookie和localstorage里
(其他网站可能是后端返回token,然后存下token值)
1.4 登录拦截怎么做的
1.路由跳转时的登录拦截主要通过router的配置实现
- 1.首先在需要登录验证的路由里加上meta:{requireAuth:true}。
requireAuth属性的作用是表明该路由是否需要登录验证,在进行全局拦截时,可以通过该属性判断路由的跳转。 - 2.然后使用router.beforeEach钩子函数
这个函数在进入每个网页之前调用
该函数接受三个参数:
from: 即将离开的路由
to: 即将要跳转的路由
next: 跳转方法。在beforeEach函数中作为结束语句调用,以实现跳转网页。
如果该路由需要登录验证并且可以在localstorage中获取到userinfo则将用户信息添加到vuex进行数据管理,如果不能获取到
userinfo则跳转到登录页。
(其他网站可能是判断是否有token)
2.发送axios请求时使用拦截器
请求拦截,如果localStorage中有token的话,就在请求头的Authorization中加'Bearer '连上token
如果没有则报错
2.小程序的登录流程
1.调用wx.login获取临时登录凭证code
2.调用wx.request发送code到我们自己的服务器,
(然后调用 auth.code2Session 接口,传入appid,appsecret,code
换取用户唯一标识 OpenID 和 会话密钥 session_key。)
我们自己的服务器会返回一个登录态的标识,比如
token
3.将登录态的标识token进行存储,以便下次使用
4.请求需要登录态标识的接口时,携带token
2.1 code是什么
临时登录凭证
2.2 code传给后端,后端能得到什么
用户唯一标识 OpenID 和 会话密钥 session_key
2.3 openid是什么
用户唯一标识
2.4 小程序中的跳转方式
1.通过navigator组件
<navigator url="/page/navigate/navigate?title=navigate" hover-class="navigator-hover">跳转到新页面</navigator>
常见参数:
open-type 跳转方式
navigate: wx.navigateTo 或 wx.navigateToMiniProgram 的功能
redirect: 关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面。
switchTab: 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面
reLaunch:关闭所有页面,打开到应用内的某个页面
navigateBack:关闭当前页面,返回上一页面或多级页面。
exit: 退出小程序,target="miniProgram"时生效
2.代码的跳转和返回
- 1.wx.navigateTo页面不是特别多时使用。保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面。
- 2.wx.redirectTo 当页面过多时,被保留页面会挤占微信分配给小程序的内存,或是达到微信所限制的 5 层页面栈。
- 3.wx.reLaunch 功能和上面两个一样,只是先关闭了内存中所有保留的页面,再跳转到目标页面。
- 4.wx.switchTab 对于跳转到 tab bar 的页面,最好选择 wx.switchTab(),它会先关闭所有非 tab bar 的页面。
- 5.wx.navigateBack 用于关闭当前页面,并返回上一页面或多级页面。
开发者可通过 getCurrentPages() 获取当前的页面栈,决定需要返回几层。这个 API 需要填写的参数只有 delta,表示要返回的页面数。
wx.navigateTo参数有:
events---页面间通信接口,用于监听被打开页面发送到当前页面的数据。
success,fail,complete:成功失败结束的回调函数
wx.navigateBack([delta])
2.4.1 可以销毁所有页面的跳转方式是哪个
wx.reLaunch(Object object)
3.vue的生命周期,怎么用的
vue面试题2有总结
4.http状态码详细的
最常见
200 - 请求成功
301 - 资源(网页等)被永久转移到其它URL
404 - 请求的资源(网页等)不存在
500 - 内部服务器错误
4开头的
400 Bad Request 客户端请求的语法错误,服务器无法理解
401 Unauthorized 请求要求用户的身份认证
402 Payment Required 保留,将来使用
403 Forbidden 服务器理解请求客户端的请求,但是拒绝执行此请求
405 Method Not Allowed 客户端请求中的方法被禁止
5开头的
502 Bad Gateway 网管错误。作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应
503 Service Unavailable 由于超载或系统维护,服务器暂时的无法处理客户端的请求。延时的长度可包含在服务器的Retry-After头信息中
504 Gateway Time-out 网关未及时获取请求。充当网关或代理的服务器,未及时从远端服务器获取请求
505 HTTP Version not supported 服务器不支持请求的HTTP协议的版本,无法完成处理