微信开发中经常遇到Curl获取信息,下面列举几个简单的小例子与大家分享:
1.HTTP GET 获取 access_token:
①拼装url ,这里需要appid和appsecret,可以在微信后台获取: $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=your_appId&secret=your_appSecret";
②写Curl语句:
$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);//如果成功只将结果返回,不自动输出任何内容。 curl_setopt($curl, CURLOPT_TIMEOUT, 500); //作为最大延续500毫秒,超过这个时间将不去读取页面
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);//不检测服务器的证书是否由正规浏览器认证过的授权CA颁发
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);//不检测服务器的域名与证书上的是否一致
curl_setopt($curl, CURLOPT_URL, $url);//设置提交地址路径
$res = curl_exec($curl);?//执行,并接收返回结果
curl_close($curl);//关闭.
③$res中就是请求返回的信息,通常是json格式,需进行json_decode成对象形式,在进行使用。
2.HTTP POST设置自定义菜单:
①拼装url:$create_menu_url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token={$access_token}";其中access_token 可以有上面的例子获得。
②写post数据,及按照微信开发文档要求的形式写菜单格式。$post='{..........}';
③Curl提交:
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$create_menu_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch,CURLOPT_POST,1);//启用时会发送一个常规的POST请求,为1或者为true
curl_setopt($ch,CURLOPT_POSTFIELDS,$post);//需要要传送的内容
$outopt = curl_exec($ch);
好了,以上连个Curl在微信开发中应该很常见了吧,大家可以封装成函数,在需要的时候直接调用就可以了,使用起来非常方便。