问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

自己的网站如何才能实现让用户用QQ或者微信登陆?

发布网友 发布时间:2022-04-23 19:12

我来回答

3个回答

懂视网 时间:2022-05-10 23:54

前言

之前让网页公司制作新官网的时候规划有第三方账号的登录功能,但由于当时的一些开放平台申请步骤比较繁琐(尤其是微信开放平台),所以一直拖延着,到了最近只能自己添加相关的功能。

由于是刚接触PythonDjango,期间找了好多视频和资料学习练习,才慢慢把MVT结构什么的弄明白了,第三方登录方面百度找到了两篇很有用的文章,也从中学习到了很多:

1. python实现微信第三方网站扫码登录(Django)
2. 用django-social-auth 做中国社交网站三方登录(QQ,微博,豆瓣,百度,人人,微信)

在实现QQ、微博的登录时就深刻体会到使用social-auth来实现第三方登录是非常简单方便、直接而且完美的,然而却一直没有找到微信怎么也同样来实现(上面第二篇文章也一样没有提及);从social-auth的解读文档里也愣是没找到Weixin的内容,由于官网已经有相应的User数据表以及存储第三方的UserSocialAuth数据格,非常规范,在使用上面第一种方法实现之后却苦恼于用户数据表的添加和修改,真心不想破坏那种结构,就在重拾social-auth想学习一下数据库存储方式的时候,竟然在social-backends里发现了Weixin.py,那不就说明能支持微信么?

注意事项

  • 微信开放平台申请及开通需要提交很多认证资料,也需要缴纳¥300每年的认证费用;与公众号、服务号等不一样哦。地址:http://open.weixin.qq.com

  • 认证通过后,添加相应的网页应用,注意授权回调域的填写,写网站的主域名即可,比如说不能写www.zzmxy.com/login/wechat之类的,只需要写www.zzmxy.com 即可(不需要添加http或者https),不然后期都是redirect_uri 参数错误!

  • 实操步骤

    1. 安装social-auth
      由于官网使用的是python-social-auth==0.2.12,下载源码回来之后,发现在social-backends里也是有Weixin.py的,证明可用;

      pip install python-social-auth==0.2.12
    2. social-auth配置:

    3. SOCIAL_AUTH_PIPELINE配置:请参考上面提及的第二篇文章的书写;

    4. AUTHENTICATION_BACKENDS配置:

      AUTHENTICATION_BACKENDS = (
       'social.backends.weibo.WeiboOAuth2', #微博的功能
       'social.backends.qq.QQOAuth2',  #QQ的功能
       'social.backends.weixin.WeixinOAuth2', #这个是导入微信的功能
       'oscar.apps.customer.auth_backends.EmailBackend',
       'django.contrib.auth.backends.ModelBackend',
       )
    5. 微信开放平台应用APPIDSECRET的配置:

      SOCIAL_AUTH_WEIBO_KEY = '53*****29'
      SOCIAL_AUTH_WEIBO_SECRET = '272152************81a8b3'
      SOCIAL_AUTH_QQ_KEY = '10*****51'
      SOCIAL_AUTH_QQ_SECRET = '5807************d15bd97'
      SOCIAL_AUTH_WEIXIN_KEY = 'wx4fb***********599'  #开放平台应用的APPID
      SOCIAL_AUTH_WEIXIN_SECRET = 'f1c17************08c0489' #开放平台应用的SECRET
    6. 配置完之后,运行你的网站,使用 www.域名.com/login/weixin 访问即可打开相应的页面了,但有没有发现出现错误了:Scope参数错误或没有Scope权限,实际操作过程中,我发现social-auth自动生成的二维码访问链接里,是少了一个scope参数,而微信官方给的二维码访问链接是这样的:

      https://open.weixin.qq.com/connect/qrconnect?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect

      如上需要的参数为5个,state可省略,但scope则是必需的,而对于网页授权的访问,scope作用域参数为固定值scope=snsapi_login,这样的话,我们就需要在social-auth的源代码上,把这个参数值给加上,根据你实际的site-packages安装路径,找到/social/backends/weixin.py文件,如我使用VirtualEnv建的路径是:

      /home/ubuntu/env/mppython/lib/python2.7/site-packages/social/backends/weixin.py

      打开这个文件,找到里面def auth_params()这一段内容(原文):

      def auth_params(self, state=None):
       appid, secret = self.get_key_and_secret()
       params = {
       'appid': appid,
       'redirect_uri': self.get_redirect_uri(state),
       }
       if self.STATE_PARAMETER and state:
       params['state'] = state
       if self.RESPONSE_TYPE:
       params['response_type'] = self.RESPONSE_TYPE
       return params

      params字典里,添加一个scope参数即可,修改后如下:

      def auth_params(self, state=None):
       appid, secret = self.get_key_and_secret()
       params = {
       'appid': appid,
       'redirect_uri': self.get_redirect_uri(state),
       'scope': 'snsapi_login',
       }
       if self.STATE_PARAMETER and state:
       params['state'] = state
       if self.RESPONSE_TYPE:
       params['response_type'] = self.RESPONSE_TYPE
       return params

      修改保存后,再重新运行工程,再次访问 www.域名.com/login/weixin 即可看到效果了!

    热心网友 时间:2022-05-10 21:02

    网站微信登录
    PC端通过微信扫码登录的形式,可以将用户在移动应用、公众号、PC端网站之间的电商订单、社交数据等统一存储,达到用户在一端操作,全网可查询的效果。

    申请类型/资格

    移动应用:
    内测期间微信登录只开放给拥有微信支付权限的开发者,请确保该移动应用已获得微信支付权限;

    网站应用:
    暂不支持直接申请,内测期间微信登录只开放给拥有微信支付权限的开发者,请确保您至少有一个移动应用已获得微信支付权限。


    案例:美丽说、腾讯新闻、同程、唯品会

    申请须满足条件

    目前微信登录功能,目前在内测阶段,对已开通移动应用微信支付的帐号开放。

    内测期间,需满足以下条件,方能进行申请:
    1、应用须审核通过;
    2、应用须获得微信支付权限;
    3、应用须绑定公众号:绑定的公众号必须通过微信认证,开通微信支付,且开启安全保护。

    登录申请方法

    进入微信开放平台(http://open.weixin.qq.com/)=》管理中心=》移动应应用(已审核通过)=》微信登录,进入微信登录功能申请页面,根据页面提示进行申请即可。


    注:微信登录申请前,应用须绑定公众号,绑定方法:在管理中心=》公众号中进行绑定即可。

    热心网友 时间:2022-05-10 22:20

    QQ互联 申请即可
    如何在腾讯视频网页版使用QQ或微信登录并成为会员?

    首先,打开腾讯视频网页版,你会在右上角的头像区域找到登录选项,轻松切换QQ或微信登录方式,只需点击进入相应页面,一键登录无需繁琐步骤。选择QQ登录后,系统会自动跳转,让你在熟悉的界面快速完成身份验证。无论是手机还是电脑,无论是新用户还是老手,腾讯视频都为你准备了多种登录途径,无需单独注册...

    如何在网页上登录自己的微信账号?

    打开电脑并在桌面上找到IE浏览器或其他浏览器的图标,双击打开。打开浏览器,进入主页后,点击上方的地址栏,然后输入wx.qq.com,该地址为网页版微信的登录地址。地址输入完成后,会自动弹出一个登录二维码。打开手机微信,点击右上方的加号,选择“扫一扫”,扫描浏览器中弹出的登录二维码。扫描成功后,点击...

    网站应用接入微信登录

    微信登录可以内嵌网站登录页面,也可以打开微信登录授权页面,QQ登录不可以内嵌网站登录授权页面,必须打开QQ登录授权页面,如果是打开微信或QQ登录授权页面,则登录授权成功后必须关闭该页面。微信登录回调地址可以指定一级根目录或二级子目录,比如 "http%3a%2f%2fzeropaas.com "或"http%3a%2f%2fzeropaa...

    千库网如何用微信密码登录

    千库网用微信密码登录的方法是:1、首先打开千库网首页,然后新用户点击右上角“注册”按钮。2、跳出手机号注册页面,选择下方的其他登录方式,QQ图标或者微信图标,选择微信图标,登录后还需绑定手机号即可。3、后期再访问千库网请点击“登录”按钮选择微信,再扫描微信二维码登录。千库网是国内提供PNG图...

    如何设置微信可以直接使用qq登录?

    首先,授权登录是一种便捷的登录方式,允许用户使用已有的第三方平台账号(如微信、QQ等)来登录其他应用或网站,无需再记住多个用户名和密码。在微信中开启授权管理功能,可以让其他应用请求访问微信账号信息,从而实现通过微信快速登录。具体步骤如下:1. 打开微信应用,点击右下角的“我”选项。2. 在“...

    如何用微信账号或QQ账号直接登录

    打开微信,在我的界面点击"设置"。在设置界面,点击"账号与安全"界面。点击"更多安全设置"。在更多安全设置界面,点击"QQ号"。点击下方的"开始绑定"。进入验证QQ号界面,输入要绑定的QQ号和QQ密码。点击"完成",即可用QQ号登录微信了。

    微信如何使用QQ登录 使用QQ登录方法介绍

    1、先打开最新版本的qq,进入后点击自己的头像,然后点击右下角的设置按钮;2、进入设置后点击帐户管理进入选项;3、进入后可点击添加或注册帐户;4、下面可以看到【其它登录方式】,会有使用微信登录QQ的选项;注意 1、微信登录QQ是否处于内部测试阶段,可以将手机QQ升级到最新版本,然后在添加账号登录界面...

    怎么让别人登我的腾讯VIP

    1. 腾讯VIP账号的共享方式 腾讯VIP支持账号共享功能,即多个用户可以使用同一个VIP账号。这意味着,如果您拥有腾讯VIP账号,您可以与家人或朋友分享该账号,让他们也能享受到VIP服务。账号共享主要通过二维码实现,每个VIP账号都有一个与之对应的二维码。2. 通过微信或QQ扫码登录 要与他人共用腾讯VIP账号的...

    怎么才能用QQ号登录微信?

    一种方法是通过绑定手机号码和邮箱来免验证登录微信。在微信设置中,可以绑定自己的手机号码或者邮箱账号,绑定完成后,当登录时可以使用绑定的手机号码或者邮箱来进行免验证登录。这种方法虽然需要先进行绑定,但是只需要操作一次,之后就可以实现快速登录了。另一种方法是使用第三方工具来进行微信免验证登录。有...

    如何才能让QQ微信在异地登陆

    方法二:1、在电脑端浏览器中通过百度搜索'腾讯客服'进入腾讯客服网站,进入网站后选择【微信】。2、在【微信】那一栏选择【解除登录限制】。3、填写资料。解封帐号:手机号/微信号/QQ号/邮箱地址,手机号:目前仅支持中国大陆手机号,验证码填写完后,点击【下一步】。4、按照网站提示,编辑指定短信,...

    如何让别人查不到自己的QQ 怎样才能让别人搜不到自己的qq号 怎么才能不让别人登录QQ 怎么才能让别人登我QQ 怎样不让别人搜到自己的QQ qq怎么不让别人看自己的动态 怎么才能让qq 怎么才能让别人加不了我qq 怎么才能让qq不升级
    声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
    Minako程程和那个程笛是什么关系? 潍坊单招培训机构有哪些 ...说单招培训交钱6300保你过?这样的机构是不是骗人的? 祁阳职业中专单招班是什么意思 什么是对口单招班 单招就业班是什么意思 什么叫单招班 陶瓷茶具的保养妙招 陶瓷茶具的那些保养方法 陶瓷茶具如何保养 关于java接口提供安卓qq,微信第三方授权登录问题 想做个APP,不知道登录能不能用第三方 微信 或QQ登录,需要得到微信 或QQ的授权嘛? 现在很多登录界面都不用注册,直接就可以用微信或者QQ账号授权登录,这样会不会泄漏个人信息? 登录微信需要qq号,怎么登录 HTML中,第三方账号有微信登陆和QQ登陆,还有微博。我是做前端的,现在叫... 手机输入法怎么关闭繁体字 1944年八月三号周岁多少? 1997年农历八月三号是公元几月几日 阳历八月三号过生日,阴历一号,听说阴历一号过生日不好是吗? 为何许多软件都需要微信授权和QQ授权才能登陆? 一九五八年八月三号出生是什么星座 阳历八月三号是什么花 唉你好8月3号从哈尔滨到合肥需要隔离吗? 哪一年的八月三号是阴历七月初三?谢谢 八月三号开封去广州要做核酸检测吗? 1988年农历八月三号是什么星座 2021年八月三号到拉萨需要核酸检测吗?到拉萨后需要隔离吗?急,求回答。 八月三号,狮子座的女生是怎么样的性格有哪些表现? 我是公历八月三号的生日请问我是什么星座 主题: 求教:PR里如何插入一段视频,后面的自动往后移? ...手机号授权登录、微信授权登录和QQ授权登录是三个独立的账号吗?_百 ... 网上传万宝龙钢笔下水大这是真的吗,如果要买那建议选择什么笔嘴宽度 我有一根万宝龙波西米亚的钢笔,可是笔墨有点粗,有什么办法可以使笔墨变细?(除了换笔咀的方法) 忆美嘉老式装相卷和电池的相机怎么使用?求高人相教! 数码相机用的时候突然断电了,SD卡连接电脑没有响应,文件读取不了。 古典式照相机的Welta Weltini I 我梦到在教室的门对面的角里,坐着一个小和尚,后来教室里太乱了,他就开始敲木鱼,越敲越烈。求解啊,... 昨晚梦见在办公室突然走进来一个敲着木鱼的尼姑,我伸了个懒腰她就冲过 ... 梦见自己被医生追着抽血,最后被在堂哥家一直敲木鱼,求玉皇大帝和观音菩萨救我 什么叫统筹车辆保险 车辆保险统筹什么意思 交通安全统筹就是车险吗? 团队介绍怎么做ppt 团队介绍应该PPT怎么做 ? 建筑中的柱子是什么? 货车统筹保险合法吗? 柱子的意思是什么? 交通安全统筹和传统的车险有什么区别吗? 柱子的意思? 中承交通安全统筹可以吗?真的可以替代传统的车险吗?