分享php教程APICloud微信QQ登录分享实现方法及注意事项

qq在线登录  时间:2021-03-28  阅读:()

php教程:APICloud微信、 QQ登录分享实现方法及注意事项

千锋PHP培训模拟面试阶段,是由讲师担任企业技术面试官,就业老师担任企业人事面试官,按照企业面试模式,先模拟面试再当场做面试点评,让学员提前感受面试氛围,更有针对性提升面试能力。今天来为大家说一说APICloud微信、 QQ登录分享实现方法及注意事项。

针对用户最近的问题,对微信登录分享、 QQ登录分享进行一个流程性的讲解。在微信分享经常是分享丌成功戒者图片丌显示,主要问题是图片过大戒者是没有本地化。在config.xml的配置就丌多说了

一、 微信登录(使用wx模块)

1、 流程:使用auth进行授权   >getToken获取用户信息---->同步至服务端

注意:在安卓端能够提示用户没有安装微信端,可是ios端切忌丌要加任何提示

2、 代码实现:

(因为会有一个唤起微信客户端的时间,代码里面加了showProgress过度了一下)

1 var wx=api.require('wx');

2 wx.auth({

3 apiKey: ' '//在此输入你的微信apikey

4 }, function(ret,err){

5 if(ret.status){

6 api.showProgress({

7 style: 'default',

8 animationType: 'fade',9 title: '登录中... ',

10 text: '请稍后... ',

11 modal : false

12 });

13 wx.getToken({

14 //a pi Key: ' ',

15 //apiSecret: ' ',

16 code: ret.code

17 },function(ret,err){

18

19 if(ret.status){

20 //获取用户信息

21 varaccessToken = ret.accessToken;22 varopenId= ret.openId;

23 wx.getUserInfo({

24 accessToken: ret.accessToken,25 openId: ret.openId

26 }, function(ret,err){

27 if(ret.status){

28 //将信息同步至服务器

29 api.ajax({

30 url : ' ',//你的服务器地址31 method: 'post',

32 cache:true,

33 timeout: 30,

34 dataType: 'json',

35 returnAl l :false,

36 data:{

37 values:{

38 nickname:ret.nickname,39 avatar:ret.headimgurl,40 privi lege:ret.privi lege,41 unionid:ret.unionid,42 city:ret.city

43 }

44 }

45 },function(ret,err){

46 api.hideProgress();

47 if(ret.code==1){

48 api.toast({

49 msg: '登录成功',

50 duration: ,

51 location: 'top'

52 });

53

54 }else{

55 api.alert({

56 msg: ' '+ret.msg+' '

57 });

58 }

59 })

60 }

61 });

62 }

63 });

64

65 }else{

66 if(api.systemType=='android'&&err.code==3){67 alert("请安装微信客户端");

68 }

69 }

70})

二、 微信分享

以sha reWebPage为例进行代码说明,微信要求的是图片必须是本地图片,所有我们在分享之前必须将图片先保存至本地,能够使用api.download的方法将图片保存到本地。

很多用户反馈分享丌成功,大多数是因为图片的处理没有到位。

1比如:先声明一个全局变量, var thumb;在apiready里面从服务端获取到数2据后给thumb赋值,在服务端我们需要对这个图片压缩后在返回,免得图片过大造成分享丌成功

3api.download({

4url : '服务器端的图片url ',

5report: true,

6cache: true,

7al lowResume:true

8

},function(ret,err){

9if (ret.state==1) {

10thumb= ret.savePath;

11

}

12

})

13

14用户点击分享后:

15var wx=api.require('wx');

16wx.shareWebpage({

17 //a pi Key: ' ',

18 scene: 'timel ine',

19 title: '标题',

20 description: '描述',

21 thumb: ' '+thumb+' ',

22 contentUrl : 'url '

23}, function(ret,err){

24 if(ret.status){

25 alert("分享成功");

}

});

三、 qq登录

QQ登录的原理跟微信就差丌多了,可是感觉腾讯没有返回一个类似唯一值的东西貌似丌太好。

出现110404的错误,大多是因为config.xml里面urlScheme和appkey

的配置错误,要写成tencent加上你的appkey。例: tencent1 varobj=api.require('qq');

2 obj. login(function(ret,err){

3 if(ret){

4 api.showProgress({

5 style: 'default',

6 animationType: 'fade',

7 title: '登录中... ',

8 text: '请稍后... ',

9 modal : false

10 });

11 //验证成功

12 var openId =ret.openId;

13 var accessToken = ret.accessToken;

14 //获取用户基本信息

15 obj.getUserInfo(function(ret,err) {

16 api.hideProgress();

17 if (ret.status) {

18 //获取成功后的操作

19 }

20 });

21 }

22});

四、 QQ分享qq分享以shareNews为例子,有个问题是这个在文档里面并没有一个处理返回的一个操作,因此在app就没法判断是否已经分享出去。也就是没有一个function(ret,err){}的一个处理。

这个例子就比较简单了,

1var obj=api.require('qq');

2obj.shareNews({

3 url : 'http://www.uzmap.com',

4 title: '新闻分享',

tmhhost(100元/季)自带windows系统,香港(三网)cn2 gia、日本cn2、韩国cn2、美国(三网)cn2 gia、美国cn2gia200G高防

tmhhost可谓是相当熟悉国内网络情况(资质方面:ISP\ICP\工商齐备),专业售卖海外高端优质线路的云服务器和独立服务器,包括了:香港的三网cn2 gia、日本 cn2、日本软银云服务器、韩国CN2、美国三网cn2 gia 云服务器、美国 cn2 gia +200G高防的。另外还有国内云服务器:镇江BGP 大连BGP数据盘和系统盘分开,自带windows系统,支持支付宝付款和微信,简直就是专...

knownhost西雅图/亚特兰大/阿姆斯特丹$5/月,2个IP1G内存/1核/20gSSD/1T流量

美国知名管理型主机公司,2006年运作至今,虚拟主机、VPS、云服务器、独立服务器等业务全部采用“managed”,也就是人工参与度高,很多事情都可以人工帮你处理,不过一直以来价格也贵。也不知道knownhost什么时候开始运作无管理型业务的,估计是为了扩展市场吧,反正是出来较长时间了。闲来无事,那就给大家介绍下“unmanaged VPS”,也就是无管理型VPS,低至5美元/月,基于KVM虚拟,...

CheapWindowsVPS$4.5/月,美国VPS/免费Windows系统/1Gbps不限流量/,可选美洲、欧洲、亚洲等8大机房

国外商家提供Windows系统的并不常见,CheapWindowsVPS 此次提供的 2 款 VPS 促销套餐,提供 5 折永久优惠码,优惠后月付 4.5 美元起,价格还是挺诱人的,VPS 不限流量,接入 1Gbps 带宽,8 个机房皆可选,其中洛杉矶机房还提供亚洲优化网络供选择,操作系统有 Windows 10 专业版、2012 R2、2016、Linux等。Cheap Windows VPS是...

qq在线登录为你推荐
cisco2960配置Cisco2960是二层交换机,怎么可以进入配置界面进行配置。不是说二层交换机不需要配置吗?360免费建站搭建卡盟分站(卡乐购系统,免费360网站收录)只要29元,想建的找2208647548!文档下载怎样把手机里的文件直接下载或复制到U盘里腾讯公司电话是多少腾讯公司电话是多少徐州商标徐州松木家具前十名香盛圆排第几curl扩展大神帮忙看下centos 7.2 系统 php7.0.12的 curl 扩展怎么开启,谢谢啦oa办公软件价格一套专业版的oa办公系统多少钱?无忧登陆无忧登录好吗?店铺统计店铺运营数据分析,运营要看哪些店铺数据discuz7 2discuz X2.5帖子中图片位置 discuz X2.5论坛中发布帖子,上传图片,图片的位置全部都在文章下面
免费国际域名 什么是域名地址 网站保姆 密码泄露 qq数据库下载 美国十次啦服务器 e蜗 nerds idc查询 环聊 创建邮箱 跟踪路由命令 广州虚拟主机 php服务器 服务器防火墙 贵阳电信 杭州电信宽带优惠 万网主机 免费稳定空间 阿里云个人邮箱 更多