文档章节

1分钟了解微信公众号API的套路

lilugirl
 lilugirl
发布于 2017/05/31 11:49
字数 533
阅读 1662
收藏 38
点赞 0
评论 8

微信公众号家族的API的规划思路是从 “公” 和 “私”两个角度划分的。导致代码也基本按照这个套路。

1 对公API是针对网站本身的API  走/cig-bin/目录 例如 微信公众菜单  ,用户消息,JSSDK 页面分享,地图服务等

2 对私API 针对网站用户的API 走/connect/ 或者/sns/目录的 例如 微信用户信息授权,微信支付等 。

诡异的是这两条线都有access_token的概念 ,所以很多初次接触微信API的人常常傻傻分不清楚 。 

简单的说对私API的access_token是跟用户的客户端走的,不同的用户 不同的IP access_token在同一时间是不同的。

而对公的API的access_token可以在两小时内保持一样,无论客户端是谁都是同一个access_token.

 

为了解释方便 我们給两种access_token分别命名为  G access_token 和 P accss_token  简称G 和P

我们可以通过P的方式获取用户的openid存入数据库 或者其他什么地方。

P+openid 可以获取用户信息 通过请求/sns/userinfo

G+openid 也可以获取用户信息  通过/bin-cig/user/info

测下来这两种获取用户数据的方法 第G+openid更靠谱和准确,比如用户客户端语言的获取是正确的。而P+openid获取的用户信息的语言貌似总是中文。

所以微信API的几条产品线我们可以这么区分:

1 针对网站或者公众号本身的有JSSDK, 微信公众号菜单,用户消息等

2 针对用户个人有微信授权,微信支付等

值得回味的是 公众号消息发送是G 针对某个用户发送消息的openid是被动的从用户回复消息里获取的。

由于多条G的产品线使用的access_token是一样的,那么这多条产品线的代码最好能共享access_token否则可能会造成access_token频繁失效 甚至报错。

 

 

© 著作权归作者所有

共有 人打赏支持
lilugirl
粉丝 92
博文 348
码字总数 104194
作品 0
杨浦
程序员
加载中

评论(8)

lilugirl
lilugirl

引用来自“开源中国首席大弟子”的评论

这波广告 我服
:dizzy_face:
百度得来终觉浅
百度得来终觉浅
我是不会去健身的
开源中国首席大弟子
开源中国首席大弟子
这波广告 我服
maxdeath
maxdeath
有打广告嫌疑
吴佩在
吴佩在
66
lilugirl
lilugirl

引用来自“Bbblack”的评论

写的字真丑
:joy:
Bbblack
Bbblack
写的字真丑
lyhuilin
lyhuilin
赞\(≧▽≦)/
10步搞定微信支付的扫码支付

先要有微信公众号,从公众号左侧菜单进入微信支付,要先申请微信支付,申请通过之后,即可使用,涉及到2个后台:公众号后台和支付平台后台 首先要得到AppID(应用ID)和AppSecret(应用密钥),获...

爬墙
2016/01/23
2.7K
2
如何做好微信公众号的日常运营?

     微信运营,日常必做那些事情呢?每一个微信公众号的运营者都是一名产品经理,我们每天阅读后台的统计数据,每日新增人数,文章阅读人数,转发次数等。下面就让小编来介绍一下微信公众...

公众开发运营官网
2017/12/06
0
0
微信支付WxPayException参数错误 return_code:Fail return_msg:time_expire时间过短

有个微信网站之前下单支付一直都正常,网站没做任何修改但最近在提交订单是总是弹出“参数错误”,在使用“微信支付样例”的jsApiPay进行测试时出现以下错误: return_code:Fail returnmsg:t...

沉默刺客
2015/10/20
4.8K
4
微信公众号支付【Java版】

微信公众号支付【Java版】 说明: ① 本文主要讲解的是微信公众号内(商城)支付部分,如需了解其他微信公众号开发内容,请访问:http://blog.csdn.net/lyq8479/article/details/8944988 【柳...

大兵瑞恩
2016/05/31
1K
5
jeewx-api 1.0.5 版本发布,微信SDK接口封装

JeeWx-api 1.0.5 版本发布,微信SDK接口封装 1、jeewx-api为何诞生 现在微信越来越火,基于微信的公众号和服务号越来越丰富,虽然微信帮助文档已经提供了相关的接口,但是接口比较多,通过代...

Jeecg
2015/09/08
5.2K
9
Java程序员变优秀的10个要点

版权声明:本文为北京尚学堂原创文章,未经允许不得转载。 1.拥有扎实的基础和深刻理解OO原则 对于Java程序员,深刻理解面向对象编程这一概念是必须的。没有OOPS的坚实基础,就领会不了像Jav...

SXTkaifa
2016/11/24
11
0
C#开发微信门户及应用(32)--微信支付接入和API封装使用

在微信的应用上,微信支付是一个比较有用的部分,但也是比较复杂的技术要点,在微商大行其道的年代,自己的商店没有增加微信支付好像也说不过去,微信支付旨在为广大微信用户及商户提供更优质...

walb呀
2017/12/04
0
0
怎样免费把垂直公众号做到行业第一?

     相信很多人也在纠结这个问题,那么怎样免费把垂直公众号做到行业第一呢?下边小编就给你分享一下小编的见解。   我之前看过很多微信公众号推广方法、攻略等。虽然这些所谓的“干货...

公众开发运营官网
2017/12/15
0
0
世界上最伟大的巫师「咪蒙」

提到自媒体,大家首先会想到的一定是papi酱、同道大叔还有咪蒙,我们今天要说的就是这三大自媒体之一的咪蒙。2016年9月15日,咪蒙以一篇《女友对你作?你应该谢天谢地,因为她爱你》强势攻占...

路人甲
2017/03/23
0
0
[H]-前端周刊

爱总结的周刊君 webpack webpack 中的 manifest.js 有何用途 本篇文章带你了解 webpack 打包之后的 manifest.js 文件 链接: mp.weixin.qq.com/s/gHMj-Y7Nk… vue.js 美团点评点餐 Nuxt.js ...

前端新视野
2017/11/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

32.filter表案例 nat表应用 (iptables)

10.15 iptables filter表案例 10.16/10.17/10.18 iptables nat表应用 10.15 iptables filter表案例: ~1. 写一个具体的iptables小案例,需求是把80端口、22端口、21 端口放行。但是,22端口我...

王鑫linux
今天
0
0
shell中的函数&shell中的数组&告警系统需求分析

20.16/20.17 shell中的函数 20.18 shell中的数组 20.19 告警系统需求分析

影夜Linux
今天
0
0
Linux网络基础、Linux防火墙

Linux网络基础 ip addr 命令 :查看网口信息 ifconfig命令:查看网口信息,要比ip addr更明了一些 centos 7默认没安装ifconfig命令,可以使用yum install -y net-tools命令来安装。 ifconfig...

李超小牛子
今天
1
0
[机器学习]回归--Decision Tree Regression

CART决策树又称分类回归树,当数据集的因变量为连续性数值时,该树算法就是一个回归树,可以用叶节点观察的均值作为预测值;当数据集的因变量为离散型数值时,该树算法就是一个分类树,可以很...

wangxuwei
昨天
1
0
Redis做分布式无锁CAS的问题

因为Redis本身是单线程的,具备原子性,所以可以用来做分布式无锁的操作,但会有一点小问题。 public interface OrderService { public String getOrderNo();} public class OrderRe...

算法之名
昨天
9
0
143. Reorder List - LeetCode

Question 143. Reorder List Solution 题目大意:给一个链表,将这个列表分成前后两部分,后半部分反转,再将这两分链表的节点交替连接成一个新的链表 思路 :先将链表分成前后两部分,将后部...

yysue
昨天
1
0
数据结构与算法1

第一个代码,描述一个被称为BankAccount的类,该类模拟了银行中的账户操作。程序建立了一个开户金额,显示金额,存款,取款并显示余额。 主要的知识点联系为类的含义,构造函数,公有和私有。...

沉迷于编程的小菜菜
昨天
1
0
从为什么别的队伍总比你的快说起

在机场候检排队的时候,大多数情况下,别的队伍都要比自己所在的队伍快,并常常懊悔当初怎么没去那个队。 其实,最快的队伍只能有一个,而排队之前并不知道那个队快。所以,如果有六个队伍你...

我是菜鸟我骄傲
昨天
1
0
分布式事务常见的解决方案

随着互联网的发展,越来越多的多服务相互之间的调用,这时候就产生了一个问题,在单项目情况下很容易实现的事务控制(通过数据库的acid控制),变得不那么容易。 这时候就产生了多种方案: ...

小海bug
昨天
3
0
python从零学——scrapy初体验

python从零学——scrapy初体验 近日因为一些事情,需要从网上爬取一些东西,故而想通过使用爬虫来顺便学习下强大的python。现将一些学习中遇到的问题记录下来,以便日后查询 1. 开发环境的准...

咾咔叽
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部