vue在微信里面的兼容问题_Vue单页面应用+微信网页开发·填坑小记

上两个星期做了一个公司用于推广的小活动,选择了Vue的单页面应用。【Vue单页面应用+微信网页开发】套餐赠送了超值大坑,在这里给大家分享一下我的辛酸,啊不,填坑记录。主要是前端填坑的实现,后台方面没有太多涉猎,小白所记,不正确、不准确的还请多多指教。

坑的方位:

1、微信网页授权登录(前后端分离导致的跨域问题)

2、接入JS-SDK实现分享等功能(history模式副带的页面刷新问题和iOS、Android获取url方式不同的兼容问题)

微信网页授权登录(前后端分离导致的跨域问题)

用户在微信客户端中访问我们的域名,公众号通过微信网页授权机制来获取用户基本信息,进而实现业务逻辑。

由于采用的Vue单页面应用框架(vue-router的history模式)、前后端分离模式,微信授权中涉及签名和token的逻辑在前端ajax请求都会遇到跨域问题,所以要依赖服务端完成。

具体见官方文档:微信网页授权尤其注意:由于公众号的secret和获取到的access_token安全级别都非常高,必须只保存在服务器,不允许传给客户端。后续刷新access_token、通过access_token获取用户信息等步骤,也必须从服务器发起。

具体解决方式:

所以在浏览器302回我们的业务域名之前的一系列操作都要交给后台处理,而通常请求业务域名到达反向代理服务器时就会接收到Nginx返回的页面资源了,所以配置好Nginx让客户端在请求业务域名的时候将请求转到后台,后台进行重定向去实行上面的3步。具体后台实现授权登录的做法请参见后台同事写的:前(单页面)后端完全分离的OAuth2授权和分享

值得注意的是,一开始将业务域名的请求

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值