当前位置: 首页 > news >正文

如何在微信订阅号里实现oauth授权登录

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

    前端时间折腾过的蛋疼问题,好不容易解决了,现在把这个分享出去;

众所周知,微信公众号分订阅号、服务号、企业号;每个号的用途不一样,接口开放程度也不一样。

微信还有个扯淡的开放平台,号称统一管理众多公众号的。反正都是交钱的功能多,两个平台把我弄得傻傻分不清楚。

切入正题,上个公司有个微信订阅号,内嵌了一个微网站,并且要实现授权登录。

这个授权登录的接口只有认证的服务号才能调用,订阅号要实现这个功能只能另辟蹊径;

这个是微信公众号的api地址

http://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.html

.这个是开放平台的api地址

https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419316505&token=&lang=zh_CN

第一次尝试:

    我看了开放平台的api里的网页授权登录,里面有个网页授权登录。但是是扫码登录,根本不适用于移动端,折腾了半天,失败。

第二次尝试:

    方倍工作室有一篇文章说可以借助服务号的oauth interface,在订阅号里使用。api里也说是可以在未关注该公众号的情况下,获取用户基本信息,如下图:

200909_zqon_2301144.png

    实际上,然并卵。折腾了半天回调地址都没有code值,然后放到该服务号里或者关注该服务号就能获取到code了,这个该死的api 忽悠人。

第三次尝试:

    这种问题懂得人实在太少,百度又是个垃圾搜索,想找个预期的回答都很难。最后好不容易找到个跟我经历很像的哥们,成功解决该问题。

202002_KGVQ_2301144.png

    这个逻辑就又回到第一次尝试了,然后把url的开头换成微信公众号里的开头,就能变向的实现微信订阅号里的授权登录。

    希望后面的朋友,少走弯路,少掉一些头发。


如果还是不太懂,后补了一篇,地址 http://my.oschina.net/wjj328938669/blog/637448

转载于:https://my.oschina.net/wjj328938669/blog/528223

相关文章:

  • LinkedIn 推出在线学习门户网站 LinkedIn Learning
  • C语言经典编程题一
  • STT GDC公司完成塔塔公司在新加坡三个数据中心的资产收购
  • Java RandomAccessFile用法
  • 做好数据挖掘模型的9条经验总结
  • 数值特征
  • 智慧城市是方法而非目标
  • 在 Linux 中用 nmcli 命令绑定多块网卡
  • 移动端手指左右滑动切换内容demo
  • 聚焦电信诈骗:大数据时代 谁来捍卫个人信息安全?
  • nginx防盗链设置
  • sql判断某个字段是否为空
  • 一个table插件,用于bootstrap开发
  • 红帽Ansible新性能助推DevOps扩展至网络领域
  • Objective-c @property和@Synthesize
  • 《深入 React 技术栈》
  • Android单元测试 - 几个重要问题
  • Create React App 使用
  • Cumulo 的 ClojureScript 模块已经成型
  • ES6语法详解(一)
  • Gradle 5.0 正式版发布
  • HomeBrew常规使用教程
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • magento 货币换算
  • redis学习笔记(三):列表、集合、有序集合
  • Sublime Text 2/3 绑定Eclipse快捷键
  • 半理解系列--Promise的进化史
  • 程序员最讨厌的9句话,你可有补充?
  • 从零开始的无人驾驶 1
  • 当SetTimeout遇到了字符串
  • 第2章 网络文档
  • 关于Java中分层中遇到的一些问题
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 智能网联汽车信息安全
  • 阿里云重庆大学大数据训练营落地分享
  • #我与Java虚拟机的故事#连载14:挑战高薪面试必看
  • (分布式缓存)Redis分片集群
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (六)Hibernate的二级缓存
  • (十八)devops持续集成开发——使用docker安装部署jenkins流水线服务
  • (四)docker:为mysql和java jar运行环境创建同一网络,容器互联
  • (五)c52学习之旅-静态数码管
  • (一)WLAN定义和基本架构转
  • (转)关于多人操作数据的处理策略
  • (转)微软牛津计划介绍——屌爆了的自然数据处理解决方案(人脸/语音识别,计算机视觉与语言理解)...
  • (转)我也是一只IT小小鸟
  • ./和../以及/和~之间的区别
  • .bat批处理(十):从路径字符串中截取盘符、文件名、后缀名等信息
  • .Net IE10 _doPostBack 未定义
  • .NET Standard 的管理策略
  • ::before和::after 常见的用法
  • @RequestParam,@RequestBody和@PathVariable 区别
  • [ vulhub漏洞复现篇 ] Jetty WEB-INF 文件读取复现CVE-2021-34429
  • [23] 4K4D: Real-Time 4D View Synthesis at 4K Resolution
  • [ABC294Ex] K-Coloring