设为首页 加入收藏

TOP

微信公众平台使用说明(一)
2019-08-15 23:32:03 】 浏览:111
Tags:公众 平台 使用说明

微信公众平台使用说明

微信公众平台是通过公众号为用户提供服务的平台

用户OpenID :每关注一个公众号就会生成一个OpenID

用户UnionID: 多个公众号可以绑到一个开放平台账号下(同主体),每个用户对同一个开放平台下的多个公众号都只有一个UnionID

 

 

微信公众平台是为公众号进行服务的,

微信公众平台调用每个接口都是基于 access_token的,有效期2个小时,每天次数有限

 

公众号主要通过 消息会话 网页 来为用户提供服务的

消息会话:

    群发消息

    被动回复消息:要加密

    客服消息

    模板消息

网页:

    网页授权获取用户基本信息

    微信JS-SDK: 可以在网页上录制和播放语音、上传照片和拍照等

 

接口使用说明:

 

第三方平台代公众号调用接口:

授权成功后,可以使用authorizer_access_token作为凭证,调用方式和公众号使用自身API的方式一样(只是需将调用API时提供的公众号自身access_token参数,替换为authorizer_access_token)

 

 

目的:给你一个公众号,能自定义菜单,能收发消息

前期准备:

一个公众号:https://mp.weixin.qq.com

 

微信公众平台 -> 开发->基本配置 ->公众号开发信息 :

开发者appid  

开发者appsecret

IP白名单

如果没有将公众号授权给第三方平台的话,就要开启->服务器配置:

           服务器地址URL:这个地址是收发微信服务器消息的

           令牌Token:这个自定义,要与代码验证中的一致

           消息加解密EncodingAESKey: 这个也是自定义

 

令牌Token的检测代码:

当你写好代码后,配置好服务器后点击提交的时候,微信服务器会向公众号的服务器url发送可以用$_GET 接收的参数,其中有一项是:$_GET['echostr'],验证代码如下:

if(isset($_GET['echostr'])){
    // 这里要先进行公众平台的服务器配置
    $signature = $_GET["signature"];
    $timestamp = $_GET["timestamp"];
    $nonce = $_GET["nonce"];
    $token = "zhaizhishe";
    $tmpArr = array($token, $timestamp, $nonce);
    sort($tmpArr);
    $tmpStr = implode( $tmpArr );
    $tmpStr = sha1( $tmpStr );

    if( $tmpStr == $signature ){

header('content-type:text');
ob_clean();
        echo  $_GET['echostr'];
    }else{

echo "fail";


            }
}

验证代码可以自行百度:https://blog.csdn.net/fkedwgwy/article/details/80356660

如果提交成功,这个服务器url就可以收发信息了

微信token验证失败原因及解决方案 :

https://blog.csdn.net/sinat_22878395/article/details/69258165

 

如果粉丝给公众号发消息,

实际上是 粉丝-->微信服务器-(消息体是xml形式)-->公众号服务器

所以微信服务器给公众号发来xml形式的消息体,公众号就要进行处理

类似这样的:

<xml><ToUserName><![CDATA[gh_612e2d3e001d]]></ToUserName>
<FromUserName><![CDATA[oqz7p0RcdvSUwUl95JWosYKhEQj8]]></FromUserName>
<CreateTime>1534125513</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[52]]></Content>
<MsgId>6589018907673136305</MsgId>
</xml>

 

这个xml字符串 直接用 file_get_contents("php://input") 来接收;

消息类型有:文本 、图片、语音、视频、小视频、地理位置、链接、事件

每个消息类型的xml格式都有所区别,但是都有一个MsgType,具体类型可以通过该字段来判断;事件可以通过MsgType = event来判断,具体什么事件可以通过Event来判断,有些还得通过EventKey进一步判断

 

回复消息的时候,也要根据消息类型的模板来,如果公众号想给粉丝回复图片消息,就需用到图片类型的xml格式;

这里的$postStr就是file_get_contents("php://input")赋值的

if (!empty($postStr)){
 

首页 上一页 1 2 3 4 5 6 7 下一页 尾页 1/8/8
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇微信第三方代公众号发起网页授权 下一篇JSON在PHP中的基本应用

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目