标签:
文本XML模板
参考实例代码:
1)组装XML
2)使用文本消息回复
1)音乐消息接口XML模板:
2)使用音乐接口发送消息
效果:
思路:
关键词:音乐(文本消息接口)
如果是音乐回复,那么必须采用音乐回复接口:
重点有4个参数:标题\描述\标准链接\高清链接
1)创建图文接口模板信息
2)使用单图文消息回复
3)使用多图文消息回复
效果如下:
微信5秒:
订阅接口(关注接口)XML模板
通过以上XML信息可以得出以下结论:
关注接口有两个参数不同于其他接口:
MsgType:event
Event:subscribe(订阅)
1)添加接收参数变量
2)判断与执行
LBS(Location Based Service):基于地理位置的服务
$longitude 经度
$latitude 纬度
通过观察可知:如果用户发送地理位置,那么我们在微信端接收时,首先接收MsgType为location,且可以接收到Location_X,Location_Y两个节点
$longitude = Location_Y;
$latitude = Location_X;
例1:通过经纬度确认用户所在地理位置
思路:可以通过第三方接口来实现对经纬度的判断
Google Map API(需FQ)
百度地图API
高德地图API
凯立德API
以百度地图API为例:
通过分析可知:
参数格式如下:
ak=密钥
location=经度,维度
output=json或xml
实验运行接口地址:发现可以正常返回信息,说明当前接口请求为get请求
file_get_contents模拟get请求
1)接收经纬度参数
2)使用第三方(百度LBS服务)确定当前地理位置
运行效果:
例2:案例:在三个地区开了三家餐馆,通过LBS服务为客户提供最近的餐馆信息
通过坐标拾取工具选点:
广州东站店:113.331222,23.156737
中山大学店:113.304775,23.103031
天朗明居店:113.398294,23.132483
可以采用百度API的测距接口,如下图:
通过观察可知:
ak = 密钥
waypoints :要测距经纬度信息,多个信息之间通过;隔开
output = xml|json :返回结果
通过运行可知,其模拟的是get请求
file_get_contents
示例代码:
运行效果:
思路:采用百度的周边搜索接口,已图文形式返回距离我们最近的5家酒店
思路:高德地图
小黄鸡(国外):语言萌萌哒
小九机器人:语言滑稽,什么都敢说
小i机器人:语言正规
图灵机器人:比较正规,语言库丰富
以小九机器人为例:
http://www.xiaohuangji.com/ 小黄鸡(内核:小九)
在实际开发可能并没有很多接口提供给我们直接使用,这个时候我们就必须通过一些手段来获取其接口信息
抓包:
Fiddler
HttpWatch
以HttpWatch为例:
打开网址,输入hello查看显示框信息:
分析以上结果可以得出以下结论:
真实的请求地址为http://www.xiaohuangji.com/ajax.php
发送请求为post请求(PHP要模拟post)
发送的参数为para
curl库:
PHP[1] 支持的由Daniel Stenberg创建的libcurl库允许你与各种的服务器使用各种类型的协议进行连接和通讯。
libcurl目前支持http、https、ftp、gopher、telnet、dict、file和ldap协议。libcurl同时也支持HTTPS认证、HTTP POST、HTTP PUT、 FTP 上传(这个也能通过PHP的FTP扩展完成)、HTTP 基于表单的上传、代理、cookies和用户名+密码的认证。
curl四步走:
第一步:初始化curl请求(句柄)
$ch = curl_init();
第二步:设置请求参数
curl_setopt($ch,CURL参数,CURL参数的值);
第三步:执行curl操作
$output = curl_exec($ch);
第四步:关闭curl句柄
curl_close($ch);
小i地址:http://www.ibotcloud.com/algorithm.jsp
图灵机器人:http://www.tuling123.com/openapi/cloud/proexp.jsp
标签:
原文地址:http://www.cnblogs.com/lifushan/p/5469450.html