微信公众测试号基础开发

前情回顾总结:
个人开发的订阅号权限太少,一般都直接使用自定义菜单来设置功能,在企业中一般都是使用服务号进行开发,如果我们自己的订阅号使用服务器进行开发的话,他的自定义菜单和自动回复都将失效,需要自己再重新开启。
一、.微信测试号的简单步骤:
在开发者工具里面找到测试账号,他的权限有许多可以使用。
直接查看开发工具的开发文档开始开发按步骤进行
1.填写服务器配置,
2.验证消息的确来自微信服务器
微信认证配置成功。我们就是开发者状态

           private function checkSignature()
				{
				    $signature = $_GET["signature"];
				    $timestamp = $_GET["timestamp"];
				    $nonce = $_GET["nonce"];
				    $token = "sunhaojie";
				    $echostr=$_GET["echostr"]
				    $tmpArr = array($token, $timestamp, $nonce);
				    排序
				    sort($tmpArr, SORT_STRING);
				    //将数组转化成字符串
				    $tmpStr = implode( $tmpArr );
				    //加密
				    $tmpStr = sha1( $tmpStr );
				    //判断是否来源于微信
				    if( $tmpStr == $signature ){
				        echo $echostr
				    }
				}
			checkSignature()

3,依据接口文档实现业务逻辑
微信接口:
拿到微信接口我们一般都需要appid appsecret (密码) access_token (这个access_token 和我们服务器配置里面的token令牌不一样,access_token 在接口中相当于唯一标识)
接口域名:使用单独的域名在相应区域速度较快。
appid appsecret 可以直接获取,access_token 需要我们通过接口获取,access_token 每天获取个数,时间有限制,所以我们需要想办法在2小时之内使用同一个access_token 所以我们需要保存起来。
4. 我们一般不使用ajax 调取接口会有跨域,jsonp不知道当前的回调函数,在这里使用php 调取微信接口,使用php的网络请求
第一中请求方式:curl:client url
第二中请求方式 :socket

     在这里使用curl  请求get微信接口  获取access_token
     在没有curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);情况下,没       有echo 就打印出来了,我们不能让他自动打印出来所以需要添加
     //1.创建一个会话
    $curl=curl_init();
    $url="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wxc748c783b38776af&secret=74f650400702c2789c1cd3f690d3b91c";
    //2.配置会话消息
    curl_setopt($curl,CURLOPT_URL,$url);
    //设置返回结果集不让自动输出
    curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
    //3.抓取url,并传递给浏览器
    $result =curl_exec($curl);
    curl_close($curl);

//我们将上述代码进行简单的封装
     function httpGet($url){
    	//1.创建一个会话
	    $curl=curl_init();
	    //2.配置会话消息
	    curl_setopt($curl,CURLOPT_URL,$url);
	    //设置返回结果集不让自动输出
	    curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
	    //3.抓取url,并传递给浏览器
	    $result =curl_exec($curl);
	    curl_close($curl);
	    return $result;
    };
    $url="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wxc748c783b38776af&secret=74f650400702c2789c1cd3f690d3b91c";
    echo httpGet($url)

2、通过curl  请求post微信接口,在微信接口中都需要传递一个access_token  所以在这里post接口也有?拼接。openid 就是关注这个公众号的唯一ID  当前接口用来设置用户名的名字
 function httpPost($url,$data){
        $curl=curl_init();
        // get 请求是默认的所以不需要设置,post 需要设置
        curl_setopt($curl,CURLOPT_POST,true);
        curl_setopt($curl,CURLOPT_URL,$url);
        //配置data 数据的会话消息
        curl_setopt($curl,CURLOPT_POSTFIELDS,$data);
        curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
        $result =curl_exec($curl);
	    curl_close($curl);
	    return $result;
    };
    $url="https://api.weixin.qq.com/cgi-bin/user/info/updateremark?access_token=30_QAGQHcRHcbO7A-bavfX5C8EMCUgIWWit9cNpD-wO0xyOU8L-cEQlDa1MNABhmpTZrNgeSaOiDDcc0o7duaImU3nBBRCRX8cS0QFeFBzJYVEn21slbCEy5KgbPOiJY78X7qSSkS2KB175Td8BAYCdAAALJN";
    $data='{
    	"openid":"oBRvXw2BsKTxcf29nVMQcB8Lh_94",
    	"remark":"sunhaojie"
    }';
    echo httpPost($url,$data);


发布了4 篇原创文章 · 获赞 1 · 访问量 157

猜你喜欢

转载自blog.csdn.net/weixin_43796856/article/details/104285976