web实践经验

web实践经验

  1. 前后端分离

  2. jwt token进行用户验证

  3. 前后端使用json进行数据交流

{
"code":0,
"mgs":"success",
"data": {"token":"...."}
}
  1. 约定code ==0 为业务正常情况,code !=0 需要Toast提示

  2. 前端发送请求application/json

  3. 后端接受参数@RequestBody

  4. 前端针对fetch进行封装,判断http状态码,获取json数据,判断业务code

前端react

小技巧
通过navigator.userAgent判断是微信,android还是ios
var ua = navigator.userAgent.toLowerCase();
var isWeixin = ua.indexOf(‘micromessenger’) != -1;
var isAndroid = ua.indexOf(‘android’) != -1;
var isIos = (ua.indexOf(‘iphone’) != -1) || (ua.indexOf(‘ipad’) != -1);
fetch异步http请求
前端把token存放到
window.localStorage或者window.sessionStorage中
通过document.title设置标题

后端 springboot

全局拦截器从token中获取用户信息,并存放到本地线程
@RequestBody controller参数
Response.ok().putData() controller返回值

微信公众号流程

(要注意这里其实是对公众号的授权,和使用微信作为授权登录是不同的,所以要注意微信开放平台与微信公众平台的区别)
微信的处理逻辑在于,当用户访问了微信指定的url后,微信把代表用户的code提供给第三方,第三方使用code换取用户的access_token
上面所说的指定的url就是

https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect 若提示“该链接无法访问”,请检查参数是否填写错误,是否拥有scope参数对应的授权作用域权限。

1、以snsapi_base为scope发起的网页授权,是用来获取进入页面的用户的openid的,并且是静默授权并自动跳转到回调页的。用户感知的就是直接进入了回调页(往往是业务页面)

2、以snsapi_userinfo为scope发起的网页授权,是用来获取用户的基本信息的。但这种授权需要用户手动同意,并且由于用户同意过,所以无须关注,就可在授权后获取该用户的基本信息。

前端引导用户访问微信授权页面获取code

我方后端使用code换取access_token和open_id

微信小程序流程

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值