利用腾讯云服务器进行微校开放平台开发

微校开放平台概述

腾讯微校是专注高校领域的公众号第三方平台,目前已接入公众号超过3万个,精准覆盖大学生超过2000万。通过微校开放平台,开发者可以轻松的直接向上千万大学生提供服务,公众号运营者也可以通过本文档来帮助拓展开发。

  • 微校开放平台主要用于指导开发者如何借助微校提供的开放能力对已授权腾讯微校的公众号提供服务能力。具体公众平台接口调用规范和标准,请参照微信公众平台开发者文档
  • 需要向运营者提供应用配置页的应用,应在运营者开启应用时,将页面链接返回微校(具体可参见应用开启请求说明),微校会以iframe的形式加载到应用管理页面,无应用配置页的应用,微校会直接展示默认应用管理页面。
  • 微校会为优秀的开发者提供一定奖励,同时,开发者也可以向微校申请技术优化指导、免费服务器等方面的支持。

服务器环境

腾讯云主机 Centos6.5 64bit (LAMP)

下面开始

1、登录微校开发平台,创建一个新的应用。

2、比如我们像上面那样,弄一个消息回复类应用。

3、填写相关信息,上传几张测试用图。

4、设置关键字 (我这里以“测试”为例,并且开启了模糊匹配)。

填写wxtestopen.php地址,填写测试平台的原始id (如果不知道,可以看后面)。

5、在填写完确认提交后,就可以看到上面这些信息,其中ApiKeyApiSecret下面要用。

6、如上图修改wxtestopen.php中的ApiSecret,修改wxtestapi.php中的ApiKeyApiSecret

7、修改完参数后,点击接口测试,如上图时就成功了。否则请检查你的参数是否修改,然后点击ApiSecret下面的应用测试地址,去开启应用。

8、如上图,依次点击开启应用和确认开启。

9、当看到如上图所示的时候,[1][2]都和我的一样,那么下面就可以去公众号测试了。下面我们去公众号掌上江大和RalphLuo测试。

至此,此次任务全部完成。下面讲解核心代码:

  1. open.php(用于来自微校的应用开启验证)核心代码如下: if ($cal_sign == $sign) { $interval = time() - $param_array['timestamp']; if ($interval >= 0 && $interval < 10) { $url = 'http://xxx.com/wxtest/wxtestapi.php';//响应地址 $token='wxtest'; //token设置 echo '{ "errcode":0, "errmsg":"", "token":"'.$token.'", "url":"'.$url.'", "config_url":"", "custom":{ "response_type":1, "response_data":[{ "title":"微校应用测试", "picurl":"" }] } }'; } }
  2. api.php【用于响应用户发送的关键字】核心代码如下 //接收文本消息 private function receiveText($object) { $media_id=$object->ToUserName;//公众号原始id $re=$this->getghname($media_id); $ghname=$re['name']; //公众号的名称 switch ($object->Content) { case "测试文字": $content = "这是个文本消息".$ghname; break; //其他的类似 default: $content = date("Y-m-d H:i:s",time())."\n技术支持 ".$ghname; break; } if(is_array($content)){ if (isset($content[0]['PicUrl'])){ $result = $this->transmitNews($object, $content); }else if (isset($content['MusicUrl'])){ $result = $this->transmitMusic($object, $content); } }else{ $result = $this->transmitText($object, $content); } return $result; }
  3. 微校获取公众号信息,签名算法等函数 function getghname($media_id){ //根据原始id(gh_id)获取公众号信息 ,返回的是数组 $apikey="xxx"; //应用apikey $api_secret = 'yyy'; //应用api_secret $time=time(); $noncestr=$this->createNonceStr(); $param_array=array( 'media_id'=>$media_id, 'api_key'=>$apikey, 'timestamp'=>$time, 'nonce_str'=>$noncestr, ); $sign=$this->cal_sign($param_array,$api_secret); $res=str_replace(array("(",")"),"",file_get_contents("http://weixiao.qq.com/common/get_media_infop?media_id=$media_id&api_key=$apikey&timestamp=$time&nonce_str=$noncestr&sign=$sign")); $re = json_decode($res,true); return $re; } function createNonceStr($length = 32) { //生成32位随机字符 $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; $str = ""; for ($i = 0; $i < $length; $i++) { $str .= substr($chars, mt_rand(0, strlen($chars) - 1), 1); } return $str; } function cal_sign($param_array,$api_secret) { //校验信息 $names = array_keys($param_array); sort($names, SORT_STRING); $item_array = array(); foreach ($names as $name) { $item_array[] = "{$name}={$param_array[$name]}"; } $str = implode('&', $item_array) . '&key=' . $api_secret; return strtoupper(md5($str)); }

在使用中,我们可以使用将公众号信息等数据存放到数据中,以便下次调用。 欢迎大家共同探讨!

相关推荐

如何利用腾讯云搭建个人网盘(Seafile)

如何在腾讯云上搭建一个PPT自动播放的服务器

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

助梦者的专栏

1 篇文章1 人订阅

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏逸鹏说道

我是如何巧妙渗入安全脉搏的(附官方还原详情)

在前面的话: 这是一篇让所有只会社域名的小黑阔感觉后悔的文章 域名劫持就不多做介绍了,”圈内”很多小孩将域名劫持仅仅理解为 社工客服解析域名,挂个黑页,只能装逼...

3215
来自专栏FreeBuf

IP.Board CMS恶意重定向分析

IP.Board CMS是一款著名的CMS系统,它允许用户很容易地创建和管理在线社区。而最近Sucuri的研究员最近发现了一个针对IP.Board的重定向。经过...

1827
来自专栏张善友的专栏

beagle MONO 应用的desktop search

      beagle是linux的desktop search软件,跟winows下的google desktop search类似的东西,它可以搜索各种各...

1787
来自专栏企鹅号快讯

伊朗APT组织OilRig携新后门RGDoor锁定中东国家政府、金融、教育机构

“用指尖改变世界” ? Palo Alto Networks公司威胁情报团队Unit 42的研究人员在最近的调查中发现了一个Internet信息服务(IIS)W...

2136
来自专栏程序员宝库

Chrome 常用插件 前端-后端-产品

俗话说chrome没有插件只有四成能力,可见插件才是chrome的牛逼之处。 前提:要想直接使用Google的应用商店需要先本地添加: 谷歌访问助手插件:(下载...

36316
来自专栏沈唁志

安利一款在 Windows10 上兼顾颜值与功能的 RSS 阅读应用

在 Windows10 的菜单栏中,有许多图标包括应用商品,照片,邮件等,当然你移除了肯定是没有的

542
来自专栏FreeBuf

黑产是如何强刷用户银行卡8.1万元的?

故事梗概 今年端午节特意动用带薪年假,在家本着远离黑客,远离江湖,舒舒服服和家人享受几天假期,谁知却早已深陷江湖。 6月11日中午叔叔找上门,说自己的银行卡莫名...

2006
来自专栏编程微刊

八款前端开发人员更轻松的实用在线工具

2343
来自专栏Jackson0714

【博客美化】07.添加打赏按钮

34010
来自专栏FreeBuf

帮女神修手机的意外发现:隐匿在iOS文件系统中的隐私信息

说明: 1. 本文仅供安全学习及教学用途,提及的部分技术带有攻击性,请确保合法使用。 2. “这些都不是我干的,我就负责说出来。” 3. 图片仅供参考。 4. ...

3339

扫码关注云+社区