微信接口请求万能函数http_request

关键字:http_request http_request post get http request
原文: http://www.cnblogs.com/txw1958/p/http_request.html 

简介

http_request是方倍工作室写的一个用于微信接口数据传输的万能函数,几乎适应于所有微信接口数据的访问及提交,
其原理是使用curl实现向微信公众平台接口http及https协议时的get,post方式。

实现

函数实现如下

function http_request($url, $data = null)
{
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
    if (!empty($data)){
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
    }
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $output = curl_exec($curl);
    curl_close($curl);
    return $output;
}

 

举例

以自定义菜单的开发为例,使用如下

<?php

$access_token = "";

$jsonmenu = '{
      "button":[
      {
            "name":"天气预报",
           "sub_button":[
            {
               "type":"click",
               "name":"北京天气",
               "key":"天气北京"
            },
            {
               "type":"click",
               "name":"上海天气",
               "key":"天气上海"
            },
            {
               "type":"click",
               "name":"广州天气",
               "key":"天气广州"
            },
            {
               "type":"click",
               "name":"深圳天气",
               "key":"天气深圳"
            },
            {
                "type":"view",
                "name":"本地天气",
                "url":"http://m.hao123.com/a/tianqi"
            }]

       },
       {
           "name":"方倍工作室",
           "sub_button":[
            {
               "type":"click",
               "name":"公司简介",
               "key":"company"
            },
            {
               "type":"click",
               "name":"趣味游戏",
               "key":"游戏"
            },
            {
                "type":"click",
                "name":"讲个笑话",
                "key":"笑话"
            }]

       }]
 }';

$url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=".$access_token;
$result = http_request($url, $jsonmenu);
var_dump($result);

function http_request($url,$data = null)
{
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
    if (!empty($data)){
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
    }
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $output = curl_exec($curl);
    curl_close($curl);
    return $output;
}

?>

 

时间: 2024-08-31 14:40:24

微信接口请求万能函数http_request的相关文章

http协议-最近在学微信公众平台,想请问在代码中请求微信接口该怎么做,比如获取token

问题描述 最近在学微信公众平台,想请问在代码中请求微信接口该怎么做,比如获取token 最近在学微信公众平台,想请问在代码中请求微信接口该怎么做,比如获取token 解决方案 参考微信官方给出的开发者文档,对着调用接口就行了. 文档路径:http://mp.weixin.qq.com/wiki/home/index.html 网上有微信公众平台开发的教程例子,找一个跟着做就好了. 参考:http://blog.csdn.net/pamchen/article/details/38718947 解

C#开发微信门户及应用(1)--开始使用微信接口

原文:C#开发微信门户及应用(1)--开始使用微信接口 微信应用如火如荼,很多公司都希望搭上信息快车,这个是一个商机,也是一个技术的方向,因此,有空研究下.学习下微信的相关开发,也就成为日常计划的重要事情之一了.本系列文章希望从一个循序渐进的角度上,全面介绍微信的相关开发过程和相关经验总结,希望给大家了解一下相关的开发历程.本随笔主要针对微信开发过程的前期准备和一些初始的工作的介绍. 在写下本文的之前一周时间里,我主要就是参考一些介绍文章以及微信公众平台的相关接口说明,并结合C#的代码开发,整理

SpeedPHP微信接口扩展

这个扩展实现了SP和微信公众平台的对接,1.0版暂时只实现了最简单的功能:绑定,收信息,回复信息.  扩展配置方法:  $spConfig = array(      'mode' => 'debug'      //扩展配置      , 'ext' => array(          //微信扩展设置          'spWeiXin' => array(              'TOKEN' => 'weixin' //微信通信密钥,后台设置          ) 

代码-微信支付 请求prepayid 签名错误

问题描述 微信支付 请求prepayid 签名错误 微信支付 调用统一接口 获取prepayId时 返回签名错误 代码为官方demo代码,官方demo代码不修改可以正常生成prepayId 参照官方demo代码修改appId,mch_id, api_key 后 用注册好的keyStore文件生成apk 代码几乎没有修改 官方api测试可以通过 四处查找无果,遂求助于广大高手们,有经验的希望不吝赐教! 解决方案 签名错误的话,估计是appId等各种参数有错误,仔细看一下官方文档或者demo呗

集成代码生成器 java 微信 自定义菜单 java微信接口开发 公众平台 SSM redis shiro 多数据源

获取[下载地址]  QQ: 313596790A 调用摄像头拍照,自定义裁剪编辑头像,头像图片色度调节B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,快速开发利器)+快速表单构建器 freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类,service等完整模块C 集成阿里巴巴数据库连接池druid  数据库连接池  阿里巴巴的 druid.Druid在监控.可扩展性.稳定性和性能方面都有明显的优势D 集成安全权限框架shiro  Shir

怎样用java调用微信接口生成二维码,并将图片存图硬盘中,求那位大神可以伸出援手,万分感激。

问题描述 怎样用java调用微信接口生成二维码,并将图片存图硬盘中,求那位大神可以伸出援手,万分感激. 怎样用java调用微信接口生成二维码,并将图片存图硬盘中,求那位大神可以伸出援手,万分感激. 解决方案 调用之后,微信会返回一个图片的二进制?还是一个图片地址?如果是图片的二进制直接用inputstream存就可以了啊,如果是图片地址,用网络请求相应地址,然后保存即可. 解决方案二: 回调的是一个URL,根据这个URL调用zing的方法生成二维码图片(bitmap类型),再把图片用文件流的形式

解析微信接口返回的json 中文昵称为乱码 怎么回事

问题描述 解析微信接口返回的json 中文昵称为乱码 怎么回事 package Htttp; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; import org.codehaus.jettison.json.JSONException; impo

php使用CURL模拟GET与POST向微信接口提交及获取数据的方法_php实例

本文实例讲述了php使用CURL模拟GET与POST向微信接口提交及获取数据的方法.分享给大家供大家参考,具体如下: php CURL函数可以模仿用户进行一些操作,如我们可以模仿用户提交数据也可以模仿用户进行网站访问了,下面我们来介绍利用CURL模拟进行微信接口的GET与POST例子,例子非常的简单就两个: Get提交获取数据 /** * @desc 获取access_token * @return String access_token */ function getAccessToken()

AES加解密在php接口请求过程中的应用示例_php实例

在php请求接口的时候,我们经常需要考虑的一个问题就是数据的安全性,因为数据传输过程中很有可能会被用fillder这样的抓包工具进行截获.一种比较好的解决方案就是在客户端请求发起之前先对要请求的数据进行加密,服务端api接收到请求数据后再对数据进行解密处理,返回结果给客户端的时候也对要返回的数据进行加密,客户端接收到返回数据的时候再解密.因此整个api请求过程中数据的安全性有了一定程度的提高. 今天结合一个简单的demo给大家分享一下AES加解密技术在php接口请求中的应用. 首先,准备一个AE