【重点】:如果项目的依赖是npm安装的,后续所有的依赖全部都要用npm安装,反之一样,总之就是不能混合安装,不能用了npm又用yarn。 npm下载后的依赖目录和yarn的目录非常的不一致,就会导致各种错误问题
首先在token之前前后端判断身份标识用session,基于cookie来实现。最新的浏览器渐渐的淘汰了cookie了,所以这种形式慢慢就没了,于是大家换了一种校验形式,使用token.
token是由后端程序生成,里面一般封装了用户的id,用户本次登录的ip地址,过期的时间,可能还有一些其他后端加入的字符等。 { "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MTkyLCJ1c2VybmFtZSI6IuiKseWNt-WEvyIsImlzbG9naW4iOjEsImlhdCI6MTY1MzQ1OTY1MywiZXhwIjoxNjUzNDYzMjUzfQ.xIQHcNy8B_cNGgfZTcj4m2aM3sG_ZlNa-zLDsR9DPWk" } token在后端程序里可以解密,后端根据数据进行校验用户是否合法。
很有网站有记住我【3-7天】
如果项目中很多地方都需要权限管理,比如路由的跳转前需要判断,比如事件前需要判断。 自定义指令去实现。 指令是用来控制元素的,所以我们使用自定义指令来解决。
ajax和socket区别:ajax是一次性连接请求,ajax请求一次,后端返回一次,然后本次ajax请求结束。
socket是和服务器建立连接后,就不会断开了,后端可以通过socket无限次的主动推送消息给前端。如果端口了,它也会尝试重新连接的。
socket的优势和使用场景:客服,股票,扫码登录/支付等。 比如客服不适应socket,只能用ajax,每隔1秒请求一次服务器,问问服务器。造成网络通信的浪费。定时间+ajax的话我们管他叫”轮询请求“是不太好的一种方式。
socket可以平时没有消息也不会产生大流量,一旦后端有消息就推送过来。
http://websong.wang?uid=123456&type=1&date=12346546
我们根据地址栏回执的参数进行处理,请求我们自己后端的接口,告诉后端,这个用户到底怎样了。
前端在生成二维码的时候就开启了socket长连接,一直监听着后端给的状态,比如1表示用户扫码了,2表示用户支付了 3 支付失败sdk 地图的,支付的,树莓滑动解锁等,实际上sdk简单理解就是一个封装好的插件,里面使用加密的手段封装了平台的对外开放的功能,目的是让纯前端实现所有的交互,而不需要接入大量的后端开发。
微信小程序,只能是用微信支付,使用小程序里一个固定的api方法,wx.requestPayment()实现支付 流程是:登录后,使用个人信息请求后端的一个订单接口,拿到订单id去请求requestPayment函数
实际这里也还是移动端的网页内嵌在了软件的壳子里。支付和手机网页差不多,但是如果是在uniapp里开发的,uniapp有一个内置的支付方法:uni-pay方法和wx.requestPayment()是一样的效果和使用方式。
npm i -D terser-webpack-plugin
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。