如何为微信公众号配置接口?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何为微信公众号配置接口?相关的知识,希望对你有一定的参考价值。

第一步、在微信平台绑定你的微信公众号。

1、注册并登录微速帮微信平台接口平台

2、添加公众号 → 功能管理 → 勾选要开启的功能。如下图


第二步、到微信公众平台设置接口。

1、登录 微信公众平台(http://mp.weixin.qq.com/),登录之后点击左侧菜单的“开发者中心”,下图红框中所示。

2、进入开发者中心之后,点击下图中绿色的“启用”按钮(如果按钮是红色的就忽略这个直接进入下一步),然后在弹出的页面里点击确定,然后点击下图中的“修改配置”(订阅号的开发者中心可能没有开发者ID、AppId和AppSecret,这属于正常的)


3、按照下面要求填写接口配置信息,填写后提交即可

比如你微速帮微信平台平台上的地址是http://www.weisubang.com/index.php/api/demo

那么URL就是http://www.weisubang.com/INDEX.PHP/api/demo

Token填写

4、在手机上用微信给你的公众号输入"帮助",如果能接收到信息就接入成功,否则请按照以上步骤重新配置

追问

谢谢,去试试先

追答

恩赶紧去试试

参考技术A 需要与第三方平台做对接,例如唯购。具体的他们应该有教程的追问

谢谢

参考技术B 好麻烦的追问

怎么麻烦

追答

首先认证公众号 300块钱的服务费 认证失败不退 然后绑定服务号

参考技术C 不懂追问

不懂还来打酱油,好流弊

微信公众平台开发入门教程接口配置

开发模式:
1. 简介

微信公众平台是腾讯公司在微信的基础上新增的功能模块,通过这一平台,个人和企业都可以打造一个微信的公众号,并实现和特定群体的文字、图片、语音的全方位沟通、互动。微信公众平台分订阅号和服务号、企业号三类平台,利用公众账号平台进行自媒体活动,简单来说就是进行一对多的媒体性行为活动,如商家通过申请公众微信服务号实现展示商家微官网、微社区、微会员、微推送、微支付、微活动,微报名,微分享、微名片等,还可以实现部分轻应用功能。已经形成了一种主流的线上线下微信互动营销方式。 至2014年开通的微信公众平台账户已经超过600万。

许多机关、政府部门也开通微信公众平台,实现了由远距离变零距离服务的延伸,大大节约了群众办事成本,贴近了服务对象,方便了群众办事,也拉近了人口计生部门与群众的关系,践行了“为民、务实、清廉”的党的群众路线教育实践活动时代内涵,收到了良好的社会效果。

2. 注册微信平台公众帐号

注册地址:https://mp.weixin.qq.com

3. 接口配置

 示例代码设置

微信公众平台提供了一个php示例代码:

http://mp.weixin.qq.com/mpres/htmledition/res/wx_sample.zip

下载下来,解压缩,打开编辑。

将token值设置为你所需要的值,token可由开发者任意填写,用作生成签名。

技术分享

编辑完保存并关闭文件,将文件wx_sample.php 更改成自定义的名字,这里改为wxapi.php,再次打包成wxapi.zip。

4 、服务器平台设置

如果有自己的服务器,而且支持php,可以将接口文件上传至服务器,如果没有自己的服务器,则可以选择部分免费的云平台进行开发,如百度应用引擎BAE(http://developer.baidu.com/bae),新浪云平台SAE(http://sae.sina.com.cn/)。


5. 配置接口

5.1 登录微信公众平台 -> 高能功能 -> 开发模式

技术分享

5.2 成为开发者

技术分享

5.3 接口配置信息

URL填写上面得到的BAE URL:http://zhuojin.duapp.com/,再加上上传的php文件名。即 http://zhuojin.duapp.com/wxapi.php

Token 填写自定义的token 值,这里为zhuojinsz。

技术分享

对于SAE,URL填写 http://1.zhuojin.sinaapp.com/wxapi.php

技术分享

5.4 提交

点击 “提交”,若一切设置正确,则会提示 “提交成功”。

技术分享

5.5 查看接口配置信息

BAE 接口信息

技术分享

SAE 接口信息

技术分享

5.6 开启开发模式

技术分享

至此,配置完毕。



接口配置代码如下:

<?php
/**
  * wechat php test
  */

//define your token
define("TOKEN", "weixin");
$wechatObj = new wechatCallbackapiTest();
if (isset($_GET[echostr])) {
    $wechatObj->valid();
} else {
    $wechatObj->responseMsg();
}


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)){
                /* libxml_disable_entity_loader is to prevent XML eXternal Entity Injection,
                   the best way is to check the validity of xml by yourself */
                libxml_disable_entity_loader(true);
                      $postObj = simplexml_load_string($postStr, SimpleXMLElement, LIBXML_NOCDATA);
                $fromUsername = $postObj->FromUserName;
                $toUsername = $postObj->ToUserName;
                $keyword = trim($postObj->Content);
                $time = time();
                $textTpl = "<xml>
                                                        <ToUserName><![CDATA[%s]]></ToUserName>
                                                        <FromUserName><![CDATA[%s]]></FromUserName>
                                                        <CreateTime>%s</CreateTime>
                                                        <MsgType><![CDATA[%s]]></MsgType>
                                                        <Content><![CDATA[%s]]></Content>
                                                        <FuncFlag>0</FuncFlag>
                                                        </xml>";             
                                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;
                }
        }
}

?>

 





以上是关于如何为微信公众号配置接口?的主要内容,如果未能解决你的问题,请参考以下文章

怎么为微信公众号配置API接口

微信公众平台开发入门教程接口配置

公众号微信支付开发

微信公众号开发

微信公众平台里的服务器配置设置是干啥用的

微信公众号开发笔记1(nodejs开发的)