你的位置:首页 > 软件开发 > Java > 微信公众平台开发——群发信息

微信公众平台开发——群发信息

发布时间:2016-09-13 11:00:11
1、目的  完成在微信公众号中群发消息。这里只是完成简单的文字发送。也可以发送语音图片等,只是发送数据格式不同而已,下面有链接,可以查询数据类型的数据发送格式。2、群发短信的流程获取测试公众账号(有账号的可以不用测试账号,不过正式的账号限制比较多)用户关注上面的公众账号通过app ...

1、目的

  完成在微信公众号中群发消息。这里只是完成简单的文字发送。也可以发送语音图片等,只是发送数据格式不同而已,下面有链接,可以查询数据类型的数据发送格式。

2、群发短信的流程

  1. 获取测试公众账号(有账号的可以不用测试账号,不过正式的账号限制比较多)
  2. 用户关注上面的公众账号
  3. 通过appid和appsecret获取我们的access_token
  4. 通过access_token群发短信

3、获取测试公众账号 + 关注公众号

1)、公众测试账号获取

  访问上面的连接,选择“接口测试号申请”获得直接打开http://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index通过微信客户端扫码登录即可登录。

  登录完即可获取到一个测试公众账号的信息。主要有appId和appsecret两个参数,这将唯一标示一个公众号,并且需要将他们作为参数获取用户的信息。、

微信公众平台开发——群发信息

2)、配置接口信息

这一步可以参照微信接入说明 ,该页提供一个php的实例下载,很简单基本上修改一下自定义的TOKEN就好了,然后把验证页面放到自己的服务器上。

       这里我提供我做的一个例子:

        准备资源:

        域名+空间(我的是sae空间+万网域名)、仅作验证的php文件

        域名指向的空间根目录我创建了一个wx_sample.php

wx_sample.php

<?php/** * wechat php test *///define your tokendefine("TOKEN", "weixin");$wechatObj = new wechatCallbackapiTest();$wechatObj->valid();class wechatCallbackapiTest{  public function valid()  {    $echoStr = $_GET["echostr"];    //valid signature , option    if($this->checkSignature()){      echo $echoStr;      exit;    }  }  public function responseMsg()  {    //get post data, May be due to the different environments    $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];     //extract post data    if (!empty($postStr)){        /* lib*/        libtrue);         $postObj = simple($postStr, 'Simple LIB$fromUsername = $postObj->FromUserName;        $toUsername = $postObj->ToUserName;        $keyword = trim($postObj->Content);        $time = time();        $textTpl = "<";               if(!empty( $keyword ))        {           $msgType = "text";          $contentStr = "Welcome to wechat world!";          $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);          echo $resultStr;        }else{          echo "Input something...";        }    }else {      echo "";      exit;    }  }      private function checkSignature()  {    // you must define TOKEN by yourself    if (!defined("TOKEN")) {      throw new Exception('TOKEN is not defined!');    }        $signature = $_GET["signature"];    $timestamp = $_GET["timestamp"];    $nonce = $_GET["nonce"];            $token = TOKEN;    $tmpArr = array($token, $timestamp, $nonce);    // use SORT_STRING rule    sort($tmpArr, SORT_STRING);    $tmpStr = implode( $tmpArr );    $tmpStr = sha1( $tmpStr );        if( $tmpStr == $signature ){      return true;    }else{      return false;    }  }}?>

错误码及其以及查询:

  全局错误码解析

使用postman模拟https请求发送如下图所示:

微信公众平台开发——群发信息

2)根据OpenID列表群发【订阅号不可用,服务号认证后可用】

发送的http请求url:(注意:和上面的不同)

http请求方式: POSThttps://api.weixin.qq.com/cgi-bin/message/mass/send?access_token=ACCESS_TOKEN

原标题:微信公众平台开发——群发信息

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录