微信接口举例:
公司主营业务:成都做网站、网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出昭苏免费做网站回馈大家。
获取关注者信息接口
1、接口使用说明
//获取用户基本信息
public function get_user_info($openid){
$url = "
$this-access_token."openid=".$openid."lang=zh_CN";
$res = $this-https_request($url);
return json_decode($res, true);
}
接口调用请求说明
http请求方式: GET
2、使用https_request,GET方式
//https请求(支持GET和POST)
protected function https_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);
curl_setopt($curl, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);
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;
}
3、正常情况下,微信会返回下述JSON数据包给公众号:
{
"subscribe": 1,
"openid": "o6_bmjrPTlm6_2sgVt7hMZOPfL2M",
"nickname": "Band",
"sex": 1,
"language": "zh_CN",
"city": "广州",
"province": "广东",
"country": "中国",
"headimgurl": "
,
"subscribe_time": 1382694957,
"unionid": " o6_bmasdasdsad6_2sgVt7hMZOPfL"
"remark": "",
"groupid": 0
}
4、json_decode解析JSON获取,接口信息
5、打印接口返回信息
$data = $this-get_user_info('openid');
print_r($data);
所有接口使用类似,主要就是curl发送GET或POST请求,返回接口获取信息。
微信公众号接口是目前移动WEB开发,用的比较多的、文档也较齐全;有许多公司、开发人员都在使用的接口之一;接口使用度比较广、用户人数众多、比较稳定。由于你没有具体指出是什么接口。用微信接口举例,可以让更多的人可以理解。
具体接口详情(微信公众号开发者文档) 获取用户基本信息接口
用curl
GET方法:
//初始化
$ch = curl_init();
//设置选项,包括URL
curl_setopt($ch, CURLOPT_URL, "");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
//执行并获取HTML文档内容
$output = curl_exec($ch);
//释放curl句柄
curl_close($ch);
//打印获得的数据
print_r($output);
POST方法:
$url = "";
$post_data = array ("username" = "bob","key" = "12345");
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// post数据
curl_setopt($ch, CURLOPT_POST, 1);
// post的变量
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
$output = curl_exec($ch);
curl_close($ch);
//打印获得的数据
print_r($output);
就是用php对微信公众号二次开发时所需要调用微信数据时接入的接口
一 、简介
公众平台消息接口为开发者提供了一种新的消息处理方式。
二 、 申请消息接口
点击申请,如实填写负责人姓名 、 手机号和邮箱,填写网址url和token,其中token可由开发者可以任意填写,用作生成签名。
三 、 网址接入
公众平台用户提交信息后,我们将以GET请求方式请求到填写的Url上,并且带上四个参数:
* signature — 微信加密签名
* timestamp — 时间戳
* nonce — 随机数
* echostr — 随机字符串
开发者通过检验signature对网址接入合法性进行校验。若此次GET请求原样返回echostr参数内容,则接入生效,否则接入失败。验证signature将结合开发者填写的token参数、timestamp参数和nonce参数等,加密流程:
* 将token、timestamp、nonce三个参数进行字典序排序
* 将三个参数字符串拼接成一个字符串进行SHA1加密
* 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信。
四 、 消息推送
当普通微信用户向公众账号发消息时,公众平台将POST该消息到填写的Url上(现支持文本消息以及地理位置消息)。结构如下:
文本消息xml格式
xml
ToUserName![CDATA[toUser]]/ToUserName
FromUserName![CDATA[fromUser]]/FromUserName
CreateTime1348831860/CreateTime
MsgType![CDATA[text]]/MsgType
Content![CDATA[this is a test]]/Content
/xml
ToUserName 消息接收方微信号,一般为公众平台账号微信号
FromUserName 消息发送方微信号
CreateTime 消息创建时间
MsgType 文本消息为text
Content 消息内容
地理位置消息xml格式
xml
ToUserName![CDATA[toUser]]/ToUserName
FromUserName![CDATA[fromUser]]/FromUserName
CreateTime1351776360/CreateTime
MsgType![CDATA[location]]/MsgType
Location_X23.134521/Location_X
Location_Y113.358803/Location_Y
Scale20/Scale
Label![CDATA[位置信息]]/Label
/xml
ToUserName 消息接收方微信号,一般为公众平台账号微信号
FromUserName 消息发送方微信号
CreateTime 消息创建时间
MsgType 消息类型,地理位置为location
Location_X 地理位置纬度
Location_Y 地理位置经度
Scale 地图缩放大小
Label 地理位置信息
图片消息结构
xml
ToUserName![CDATA[toUser]]/ToUserName
FromUserName![CDATA[fromUser]]/FromUserName
CreateTime1348831860/CreateTime
MsgType![CDATA[image]]/MsgType
PicUrl![CDATA[this is a url]/PicUrl
/xml
ToUserName 消息接收方微信号,一般为公众平台账号微信号
FromUserName 消息发送方微信号
CreateTime 消息创建时间
MsgType 消息类型image
PicUrl 图片链接,开发者可以用HTTP GET获取
五 、 消息回复
对于每一个POST请求,开发者在响应包中返回特定xml结构,对该消息进行相应操作(现支持回复文本消息 、 回复图文消息和星标操作)。xml结构如下:
回复文本消息格式
xml
ToUserName![CDATA[toUser]]/ToUserName
FromUserName![CDATA[fromUser]]/FromUserName
CreateTime12345678/CreateTime
MsgType![CDATA[text]]/MsgType
Content![CDATA[content]]/Content
FuncFlag0/FuncFlag
/xml
FromUserName 消息发送方
ToUserName 消息接收方
CreateTime 消息创建时间
MsgType 消息类型,文本消息必须填写text
Content 消息内容,大小限制在2048字节,字段为空为不合法请求
回复图文消息格式
xml
ToUserName![CDATA[toUser]]/ToUserName
FromUserName![CDATA[fromUser]]/FromUserName
CreateTime12345678/CreateTime
MsgType![CDATA[news]]/MsgType
Content![CDATA[]]/Content
ArticleCount2/ArticleCount
Articles
item
Title![CDATA[title1]]/Title
Description![CDATA[description1]]/Description
PicUrl![CDATA[picurl]]/PicUrl
Url![CDATA[url]]/Url
/item
item
Title![CDATA[title]]/Title
Description![CDATA[description]]/Description
PicUrl![CDATA[picurl]]/PicUrl
Url![CDATA[url]]/Url
/item
/Articles
FuncFlag1/FuncFlag
/xml
FromUserName 消息发送方
ToUserName 消息接收方
CreateTime 消息创建时间
MsgType 消息类型,图文消息必须填写news
Content 消息内容,图文消息可填空
ArticleCount 图文消息个数,限制为10条以内
Articles 多条图文消息信息,默认第一个item为大图
Title 图文消息标题
Description 图文消息描述
PicUrl 图片链接,支持JPG、PNG格式,较好的效果为大图640*320,小图80*80,限制图片链接的域名需要与开发者填写的基本资料中的Url一致
Url 点击图文消息跳转链接
星标消息
在xml结构中,有一个FuncFlag字段,开发者可以通过填写FuncFlag字段为1来对消息进行星标,你可以在实时消息的星标消息分类中找到该消息