作者:小飞燕 发布时间:2021-04-16 10:17:49
导语本文整理了全网深受用户关注的个自定义菜单跳转小程序怎么弄经验知识,可以帮助您全面了解代理怎么做,小白也能成为高手,跟随小编一起来看一看吧!
在微信小程序的开发中,经常会有一个定义菜单的功能,然后用户小程序的菜单进入用户的个人中心,通常应用于各种公众账号的会员服务。那么如何让自定义菜单跳转到小程序呢?
第一种选择是通过用户获取用户openid,但是要通过用户跳转获取用户openid,必须在菜单中动态绑定applet用户的openid,或者在菜单的跳转url中填写微信提供的链接,给出了两种链接类型。
一个是范围为snsapi_base的链接
https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx 520 c 15 f 417810387 redirect _ uri=https://chong . qq.com/php/index . php?d=& c=wxadapter & m=mobile dal & showwxpaytitle=1 & vb2 tag=4 _ 2030 _ 5 _ 1194 _ 60 response _ type=code scope=snsapi _ base state=123 #微信_重定向
另一个是范围为snsapi_userinfo的链接
https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxf0e 81 c3 bee 622d 60 redirect _ uri=http://nba . bluewebgame.com/oauth _ response . phpresponse _ type=code scope=snsapi _ user infostate=state #微信_redirect
这两种链接的区别如下
应用授*范围,snsapi_base(不弹出授*页面,直接跳转,只获取用户openid),snsapi_userinfo(弹出授*页面,可以通过openid获取昵称、性别、位置。并且,即使在不注意的情况下,只要用户授*,就可以获得信息)
网上有很多说法是把链接的url直接作为微信自定义菜单中查看类型的url(填写url时需要配置网页授*回调域名和appid)。我试过这个方法,但失败了。
{
键入' : '视图',名称' : '会员中心',url ' : ' https://open . weixin . qq.com/connect/oauth 2/authorize?appid=你的appidredirect_uri=你配置接收微信认证的地址?response _ type=code scope=sns api _ base state=1 #微信_redirect '
},
返回的结果是菜单创建失败
菜单创建失败errcode : { 40033 } errmsg : {无效字符集。请检查您的请求,如果包含uxxxx将创建失败!hint: [91.ga0792vr23]}
我试图对以下地址进行url编码,但这是同一个错误。
然后我想到了一个办法
在自定义菜单中填写自己的url,在填写的url中将用户重定向到snsapi_base的url,然后在snsapi_base中配置并获取用户openid等用户信息,比较后跳转到一个页面,也就是通常的会员中心页面。
流程如下
请看小程序代码
{
键入' : '视图',名称' : '会员中心',url':'http://已配置网址/重定向'
}
其中用户通过url跳转到
http://已配置的网址/重定向
然后在处理方法中调用重定向一次
//类上的配置
@控制器
@ request mapping('/微信')
公共类微信控制器{
@ request mapping(value='/redirect ',method=requestmethod.get)
public string weixinrdirect(httpersvletrequest请求,httpservletresponse响应){
return ' redirect :3359 open . weixin . qq.com/connect/oauth 2/authorize?appid=您的appidredirect_uri=您的服务器处理地址?response _ type=code scope=sns api _ base state=1 connect _ redirect=1 #微信_ redirect ';
}
}1234567891012345678910
服务器会把微信认证跳转到你的服务器处理地址,如上
重定向_uri=服务器处理地址中的地址
这里配置为
您的服务器地址/oauth
代码如下
@requestmapping(value='/oauth ',method=requestmethod.get)
public string weixinoauth(httpersvletrequest请求,httpservletresponse响应,model model) {
//获取代码
string code=request . getparameter(' code ');
string appid='您的appid ';
string secret='您的秘密';
//交换access_token,其中包含openid
string url=' https://api . weixin . qq.com/sns/oauth 2/access _ token?appid=appid secret=secret code=code grant _ type=authorization _ code '。替换(' appid ',appid)。替换(' secret ',secret)。替换(' code ',code);
//urlconnectionhelper是一个模拟发送http请求的类
string jsonstr=urlconnectionhelper . send get(url);
//system . out . println(jsonstr);
//out . print(jsonstr);
json object json object=new json object(json str);
string open id=jsonobj . get(' open id ')。tostring
//有了用户的opendi,就可以得到用户的信息
//地址是https://api.weixin.qq.com/sns/userinfo? access _ token=access _ tokenopenid=openidlang=zh _ cn
//获取用户信息,返回页面
model.addattribute('user ',微信用户);
返回“vip/user info”;
}12345678910111213141516171819202034567891011121314151617181920
效果如下
另外,当用户用其他浏览器打开时,会出现错误,保证了只能在微信中使用,保证了安全性。而且地址栏不会暴露其他用户的个人信息。
看了以上信息,如何让自定义菜单跳转到小程序,知道操作步骤吗?希望这个教程能对大家有所帮助。更多相关信息,请关注源社网小节目频道。
下面是题目的开头。微信公众平台小程序增加了分享、扫地等功能。标题到此结束
腾讯科技消息近日,微信公众平台对小程序进行了公测。为了让商家开发更多功能的小程序,现在增加了相关功能,如下所示:
1.分享
您可以与朋友或群聊分享小程序的页面。
2.模板消息
商家可以给已经收到服务的用户发送模板消息。用户可以在收到一次服务后的七天内收到一条模板消息。
3.客服新闻
用户可以在小程序中联系客服,并支持文字和图片。商家可以在48小时内回复用户。
4.扫一下
用户可以在小程序中使用扫描。
5.带参数的二维码
支持在开发者工具中生成带参数的二维码。扫描完代码后,用户可以打开不同页面的小程序。(目前仅由开发者和体验者使用)
此外,100多个功能点得到了优化和修复,如大大增强了地图功能。
上一篇:微信小程序控制台输出开发实例
下一篇:微信小程序自定义分享怎么弄
368位用户关注
756位用户关注
461位用户关注
226位用户关注
128位用户关注
929位用户关注
89位用户关注
0位用户关注
737位用户关注
40位用户关注
10位用户关注
43位用户关注