日期:2023-07-29访问量:0类型:小程序制作资讯
实现多个小程序与公众号之间的用户关联
1.微信公众平台官方文档
为了识别用户,每个用户都会为每个公众号生成一个安全ID。 如果需要在多个公众号和移动应用之间共享用户,则需要到微信开放平台将这些公众号和应用绑定到一个开放平台账号下,绑定后,虽然一个用户拥有多个不同的公众号和应用程序,他在同一开放平台帐号下只有一个公众号和应用程序,具体可以在用户管理-获取用户基本信息(机制)文档中了解。
如果你已经按照微信官方文档实现了,那么恭喜你,不用再往下看了,我们就不打扰你了。
上面的描述已经很清楚了。 每个微信用户进入公众号和小程序时都会生成不同的账号。 如果想要获取用户的唯一ID,必须同时绑定同一个开放平台账户。
本文送给缺300元去开放平台认证的码友
2. 准备工作 3. 应用场景描述
当你有创意的时候,斑竹香开发了微信小程序。
但痛苦的事情也随之而来。 小程序用完就没了,根本吸引不了用户。 这个时候,就是公众号出现的时候了。 公众号和小程序是相辅相成的,因为公众号可以为小程序留住粉丝并与他们沟通。 粉丝互动,引导粉丝进入小程序,实现公众号变现。 同时,小程序与公众号的结合也能大大提高用户粘性,增加复购。
这里我将介绍一种轻松实现两者关联的方法。 用户只需进入小程序一次即可建立关联,然后往下看
四、实施步骤
硬食物
A。 获取微信小程序(用户唯一ID)
获取用户代码:
wx.login({
success: res => {
// res.code 得到微信小程序用户一次性code
wx.request({
url:'https://api.weixin.qq.com/sns/jscode2session?appid=' + appId + '&secret=' + secret + '&js_code=' + res.code + '&grant_type=authorization_code',
data: {},
header: {
'content-type': 'json'
},
success: function (u) {
var openid = u.data.openid //返回openid
}
})
}
})
注:上面的代码是一个非常不标准的例子,只是为了演示实现思路和步骤。 (您开发时,请不要直接在小程序中留下您的appid和ID,必须通过后端服务器进行传输)
b. 使用web-view获取用户公众号
上一步已经获取到了,所以让用户不急着进入小程序主页面。 然后您可以使用后端服务来查询当前是否与该网站关联。 如果没有,您可以将用户重定向到您准备好的网络视图页面的坑。 逻辑代码如下:
// 检查关系是否已经建立
wx.request({
url: 'http://XXXX', //后台URL 略
success(res) {
if(!res.data.exist){
//如果不存在则直接跳走
wx.navigateTo({
url: '/pages/home/webview?wxid=wxOpenid'
})
}
}
});
// web-view "/pages/home/" 带有一个不执行任何操作的空壳
wxml:
<web-view id="viewopen" src="{{src}}" bindload="onbindLoad">
web-view>
js
Page({
data: {
src: ""
},
onLoad: function (options) {
//
let redirect_url = 'https//XXX/api_XXX?wxopenid=' + options.wxid;
this.data.src = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=公众号的appid&redirect_uri=' + eascape(redircturl) + '&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect';
this.setData({
src: this.data.src
})
}
})
C。 在后端API服务中获取
上述网址是获取公众号用户的code。 获取成功后会跳转到您指定的返回URL。 这时候你就可以在你的“”中获取到用户的code了,因为用户已经注册并作为参数传递给你的后台API页面了。 此时,您只需要将刚刚获得的公众号代码兑换给该用户即可。 最后,我提醒你,直接将这两个来之不易的关系保存到你的数据表中。 以供下次使用。
获取公众号接口网址:.(“{0}&={1}&code={2}&=”, , , code)
4. 进坑很容易,出坑也很容易
这一步非常关键。 如果用户掉进坑里出不来,那么你的小程序就算是白做了。
如果第二步B留下的后端URL只是干货,那么获取就太对不起它的超高价值了。 微信平台喜欢给我们留一个,这里我们也留一个返回网址为‘https//XXX/’,在第二步添加该URL并拼接完整‘https//XXX/?=XXXX&=’,你没有’ t 你没看错,是html。 这时候,估计明白了我的良苦用心了。
第三步,获取用户信息并建立关系后,通过重定向地址(.(url))将上面简陋的.html返回到web-view,然后最后显示它的值,重现html并执行
我们揭开.html神秘的面纱,发现无非是这样的:
DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js">script>
HEAD>
<BODY>
BODY>
<SCRIPT LANGUAGE="JavaScript">
<!--
function fan()
{
wx.miniProgram.navigateBack({
delta: 0,
})
}
//-->
SCRIPT>
HTML>
看到实在是空了,我就告诉web-view如何出坑(返回上一页),真的那么容易吗,请在评论区决定
5. 打开您的交互式应用场景
亲爱的码农们,应用场景给您留言
——欢迎拍砖——
TAG标签:微信公众平台小程序
日期:2024-02-23 浏览量:62
日期:2024-01-15 浏览量:141
日期:2023-12-15 浏览量:117
日期:2023-12-14 浏览量:73
日期:2023-07-29 浏览量:76
日期:2023-07-26 浏览量:145