代码开发前准备

1)登陆小程序管理平台-开发–开发设置-业务域名加上需要跳转的路径的域名

注意:1.是业务域名不是服务器域名;2.需要配置校验文件

在这里插入图片描述

2)登陆公众号管理平台-公众号设置–功能设置-网页授权域名加上和上面小程序业务域名一样的域名地址。

用户在网页授权页同意授权给公众号后,微信会将授权数据传给一个回调页面,回调页面需在此域名下,以确保安全可靠。注意:域名前面不加https协议

在这里插入图片描述

代码开发-小程序端

<view class="list-wrap">
	<web-view src="https://open.weixin.qq.com/connect/oauth2/authorize?appid=公众号appid&redirect_uri={{url}}&response_type=code&scope=snsapi_userinfo&state=123#wechat_redirect"></web-view>
</view>

注:appid为公众号的appid,redirect_uri是授权成功之后跳转的回调页面

代码开发-回调页面(vue)

1、引入JSSDK 1.3.2
可在index.html页面直接加script 引入

<!-- 引入weixin-js-sdk线上版本 -->
<script charset="utf-8" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script>

2、用npm安装weixin-js-sdk

npm install weixin-js-sdk

在需要用到的页面引入:

import wx from 'weixin-js-sdk'

完整代码

<template>
	<div></div>
</template>

<script>
import wx from 'weixin-js-sdk';

export default {
	name: 'login',
	data() {
		return {};
	},
	created() {
		if (this.getParameterByName('code')) {
			/**重新跳回小程序的方法*/
			wx.miniProgram.navigateTo({
				url: '/pages/login/login?code=' + this.getParameterByName('code')
			});
		} else {
			alert(123);
		}
	},
	methods: {
		getParameterByName(name, url) {
			if (!url) url = window.location.href;
			name = name.replace(/[\[\]]/g, '\\$&');
			//匹配所有符合条件的,并取最后一个
			var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)', 'g');
			var results = url.match(regex);
			var tempResults = results != null && results[results.length - 1] != undefined ? results[results.length - 1] : '';

			var finalResults = regex.exec(tempResults);
			if (!finalResults) return '';
			if (!finalResults[2]) return '';
			return decodeURIComponent(finalResults[2].replace(/\+/g, ' '));
		}
	}
};
</script>

这样即可在微信小程序中获取到微信公公众号的code,把code传给后端即可获得公众号的openid,来达到将小程序的信息通过微信公众号推送给用户

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐