对QQ、微信等第三方登录的几个思考
转自:http://www.jianshu.com/p/7f282dfc16fc
今天聊聊注册、登录环节中很常见的第三方登录,如QQ、微信、支付宝、新浪微博等。虽然这些产品的开放平台都提供了标准的接入文档,但是在接入时还有些问题需要想清楚。
1 第三方登录目的
第三方登录的目的很简单,就是利用用户在其他平台上频繁使用的账号,来快速登录你的产品,达到不注册就登录的目的。
2 第三方登录好处
第三方登录的好处,显而易见。
不需要注册账号,直接使用已有的QQ号、微信等登录。减少了注册环节,减少了因为注册而流失的用户。
可以直接获取用户昵称、头像等信息,省去再次填写昵称、上传头像的麻烦。
共享QQ、微信等账号已有的用户关系,用户进入产品中就能找到熟悉的人,容易留住用户。
多数情况下,还减少了登录时账号和密码输入,通过点击就完成了登录。
3 第三方登录不足
当然第三方登录,相比自建账号体系(产品提供手机、邮箱注册),也存在短板。最大的短板来自对用户后续营销信息的触达。
使用第三方登录,相当于为了便捷性,放弃了自建账号体系中对用户手机号、邮箱的获取,后续不能通过手机短信、邮箱将营销信息推送给用户。
4 什么类型应用适用于第三方登录
不是所有应用都适合第三方登录。
一般来说,对于工具型、游戏型、内容型等应用,注重的是工具的使用、内容的提供,适合把第三方登录放在优先的位置,甚至只提供第三方登录就行,免去用户注册。
对于电商类应用,注重自己账号体系的建立、注重用户后续的营销,第三方登录只是作为补充,将第三方登录置于较弱的位置,为新没有账号的用户提供快速登录。
对于支付类、金融类应用,强调安全性、强调隐私性,一般不提供第三方登录。如果这些类型应用提供第三方登录,让用户觉得不安全,感觉自己的信息会通过第三方授权泄露出去。
看看你的应用属于什么类型,是不是合适第三方登录,第三方登录应该置于什么样的权重下。
5 第三方登录对于昵称的处理
你的产品如果对于昵称限制不严格,比如昵称不唯一、可修改等。可以直接将用户第三方账号的昵称作为用户昵称,写到数据库里。至于第三方昵称有更新,你的产品可以不随着更新,头像也如此。
你的产品如果对于昵称限制比较严格,比如昵称唯一、昵称不能带某些敏感词、昵称不可修改等。可以直接显示用户第三方昵称,但是不需要写入到数据库中,用户仍然可以在你的产品中填写自己的昵称。
6 第三方登录后不要再引导填写各类信息
对于第三方登录后,不少产品进一步引导用户绑定手机号、绑定邮箱、绑定已有的账号、设置昵称等操作。这就违背了你使用第三方登录的初衷。使用第三方登录,本来就是想让注册、登录变得简单,你这样一搞,比注册一个完整账号还复杂。
这些操作如果是必须的,可以在后面的流程中再去引导。比如领取优惠券时需要填写手机号,那这时再引导填写手机号。
7 QQ、微信登录中存在的问题
在接入第三方登录过程中,常遇到到pc网站和移动应用使用同一个QQ号登录后,生成两个账号的尴尬。
如果你还没有新建移动应用,解决方法是:
1)首先在http://connect.qq.com申请网站接入,取得网站应用的AppId、AppKey
2)然后在http://open.qq.com/申请创建 移动应用,在“关联QQ互联APPID”提示弹窗上,选择“是”并输入网站APP ID 和APP KEY。这其实是一个绑定的过程。如下图:
如果你已经新建了移动应用,但是没有和网站应用绑定,解决办法是给腾讯客服connect@qq.com发邮件,让腾讯那边帮助进行人工绑定处理:
1)告知网站应用APPID和移动应用APPID
2)指定其中一个APPID作为主APPID,将另一个APPID绑定在主APPID下(哪个APPID作为主APPID的依据是,哪个APPID对应的应用有用户登录数据。如果2个应用都登录数据,那需要看你舍弃哪个)
多个移动应用和网站应用绑定,也是这个思路,需要联系腾讯客服进行处理。
微信对于多个应用使用同一个微信号登录返回同一个账号的处理很简单。一个unionid机制来实现。微信对于unionid说明如下:
如果开发者拥有多个移动应用、网站应用和公众帐号,可通过获取用户基本信息中的unionid来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号,用户的unionid是唯一的。
对于微博、支付宝等第三方登录,都应该有类似的机制。只是QQ登录的处理比较麻烦。
对QQ、微信等第三方登录的几个思考的更多相关文章
- 微信、QQ、新浪微博等第三方登录,你想知道的都在这了(上) 微信、QQ、新浪微博等第三方登录,你想知道的都在这了(下)
微信.QQ.新浪微博等第三方登录,你想知道的都在这了(上):https://www.jianshu.com/p/133d84042483 微信.QQ.新浪微博等第三方登录,你想知道的都在这了(下):h ...
- tp5集成淘宝,微信,网易,新浪等第三方登录
tp5集成淘宝,微信,网易,新浪等第三方登录 一.总结 一句话总结: 接口 链接 实现的话就是这些平台给的一个接口(链接),你通过这些接口登录进去之后,它会给你返回用户名,头像之类的信息,我们的网站存 ...
- 拾人牙慧篇之———QQ微信的第三方登录实现
一.写在前面 关于qq微信登录的原理之流我就不一一赘述了,对应的官网都有,在这里主要是展示我是怎么实现出来的,看了好几个博客,有的是直接复制官网的,有的不知道为什么实现不了.我只能保证我的这个是我实现 ...
- SpringCloud微服务实战——搭建企业级开发框架(四十一):扩展JustAuth+SpringSecurity+Vue实现多租户系统微信扫码、钉钉扫码等第三方登录
前面我们详细介绍了SSO.OAuth2的定义和实现原理,也举例说明了如何在微服务框架中使用spring-security-oauth2实现单点登录授权服务器和单点登录客户端.目前很多平台都提供了单 ...
- 关于使用QQ、新浪微博、腾讯微博等第三方登录网站的开发过程(二)
(二).新浪微博登录 1. 首先在新浪微博开放平台注册成为开发者.[http://open.weibo.com/connect] 具体自己填写一些相关信息就OK! 2. 注册成功之后,点击[微连接], ...
- iOS应用程序开发之应用间的跳转(用着微信等第三方分享登陆)
简介 配置和实现 判断应用启动方式 一.简介 最实际项目开发中,我们难免会遇到需要从一个应用跳转到另一个应用的情况.比如微信分享,实际就是一种应用间的跳转.但是有时候我们需要实现自己的两个应用间的跳转 ...
- spring boot zuul集成kubernetes等第三方登录
介绍一下,在单点登录平台集成kubernetes登录,集成其它系统的登录原理是一样的,如grafana, nacos, jenkins等. POM引用: <dependency> < ...
- PHP实现qq三方登录
除了qq第三方登录外.还有微博,微信等第三方登录 qq第三方登录,遵循oauth2.0协议 这里是说明http://www.cnblogs.com/yx520zhao/p/6616686.html q ...
- apiClould微信三方登录,qq三方登录
三方登录需要在config.xml文件中配置一下,res文件下需要新建一个key.xml文件中也需要配置,请点击链接查看详情 微信:https://docs.apicloud.com/Client-A ...
随机推荐
- Reading Famous blog to prevent me wasting time on blind wandering
I can`t help surfing the useless bbs and some other kind of SNS. The time I begin to do it, it costs ...
- Windows 操作小技巧 之一(持续更新)
1.图片批量旋转 通常携带单反去景点排了大量照片回来处理图片时都会遇到很多横竖杂乱排序的图片难以处理的情形.现提供如下技巧进行处理. 1).在文件夹中添加"方向"的排列或分组选项: ...
- hessian接口参数,子类与父类不能有同名字段解决方法
hessian默认是使用 com.caucho.hessian.io.JavaSerializer 序列化,同名字段子类字段值被赋值两次,最终用父类null值赋给了子类同名字段,解决方法就是 指定序列 ...
- 给Windows + Apache 2.2 + PHP 5.3 安装PHP性能测试工具 xhprof_0.10.3_php53_vc9.dll
1.下载XHProf 到这里 http://dev.freshsite.pl/php-extensions/xhprof.html 下载Windows版本的XHProf,我这里选择下载 XHProf ...
- 初始Jquery--以及工厂函数
一.JavaScript框架 1什么是JavaScript框架 普通JavaScript的缺点:每种控件的操作方式不统一,不同浏览器下有区别,要编写跨浏览器的程序非常麻烦.因此出现了很多对JavaSc ...
- FineUI第九天---表单验证
表单验证 步骤: 1.比如为TextBox设置Required=”true”或者ShowRedStar=”true”两个属性,表示此输入为必填项,并且在标签的后面显示一个红色的星号提示. 2.Vali ...
- 如何建立一个完整的游戏AI
http://blog.friskit.me/2012/04/how-to-build-a-perfect-game-ai/ 人工智能(Artificial Intelligence)在游戏中使用已经 ...
- 取数据的前N行
用awk中csv文件中取前1000行出来,代码虽少,很容易出错 BEGIN{ FS=","; OFS=","; i=; } { i++; )exit; prin ...
- 2.AngularJS MVC
AngularJs的MVC全部借助于$scope(作用域)实现 1.ng指令 <!doctype html> <html ng-app> <head> <me ...
- Linux--多网卡的7种Bond模式
网卡bond是通过把多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡.在应用部署中是一种常用的技术,我们公司基本所有的项目相关服务器都做了bond,这里总结整理,以便待查. bond ...