微信公众平台消息接口开发(30)大众点评商户信息团购及优惠券查询
微信公众平台开发 微信公众平台开发者 微信公众平台开发模式 大众点评 商户信息 团购 城市优惠券
作者:方倍工作室
原文:http://www.cnblogs.com/txw1958/archive/2013/05/23/weixin-if30-dianping.html
一、获取数据
大众点评推出国内首个 O2O 开发者平台——“大众点评开发者平台”,开发者应用可访问大众点评平台上的本地商户信息、商户点评、优惠及团购等内容。
通过大众点评 API,开发者的相关应用可以根据用户的实时需求,访问大众点评平台上的本地商户信息、商户点评、优惠及团购等内容。未来,他们还将开放商户预订、电子会员卡等服务,与开发者探索更多合作的可能性。
开发者平台申请地址 http://developer.dianping.com/
开发者申请使用大众点评API需要经过三个步骤:
第一步,注册开发者。
第二步,注册成功后即可获取App key,并拥有使用测试数据的权限,请参考《开发者协议》和《审核规范》进行应用开发。
第三步,在应用管理台提交应用审核,大众点评工作人员审核通过后,App key升级正式使用权限,同时自动切换为正式数据。
正式数据 App Key:480314895 App Secret:012e25459c3947e797104b397d1a0c6b
二、程序开发
目前大众点评主要有以下接口
这些接口都可以在微信公众平台上对接起来。
这里对其唯一的开发难点讲解如下:
API请求签名
概述
大众点评API需要通过签名来访问,签名的过程是将请求参数串以及APP密钥根据一定签名算法生成的签名值,作为新的请求参数从而提高访问过程中的防篡改性。签名值的生成详见下面的描述。
URL签名生成规则
所有大众点评API的有效访问URL包括以下三个部分:
1. 资源访问路径,如/v1/deal/find_deals;
2. 请求参数:即API对应所需的参数名和参数值param=value,多个请求参数间用&连接
如deal_id=1-85462&appkey=00000;
3. 签名串,由签名算法生成
签名算法如下:
1. 对除appkey以外的所有请求参数进行字典升序排列;
define('APPKEY','XXXXXXXX'); define('SECRET','XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'); define('URL', 'http://api.dianping.com/v1/business/find_businesses'); $params = array('format'=>'json','city'=>'上海','latitude'=>'31.2204200000392','longitude'=>'121.41163000018','radius'=>'1000','offset_type'=>'1','sort'=>'7','has_deal'=>'1','has_coupon'=>'1','category'=>'美食','region'=>'长宁区','limit'=>'20','keyword'=>'泰国菜'); ksort($params);
2. 将以上排序后的参数表进行字符串连接,如key1value1key2value2key3value3...keyNvalueN;
$codes = APPKEY; $queryString = ''; while (list($key, $val) = each($params)) {$codes .=($key.$val);$queryString .=('&'.$key.'='.urlencode($val)); } $codes .=SECRET;
3. 将app key作为前缀,将app secret作为后缀,对该字符串进行SHA-1计算,并转换成16进制编码;
4. 转换为全大写形式后即获得签名串
$sign = strtoupper(sha1($codes));
5. 签名串获得后,将其作为sign参数附加到对应的URL中,即可正常访问API。
$url= URL . '?appkey='.APPKEY.'&sign='.$sign.$queryString; $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_ENCODING, 'UTF-8'); $data = json_decode(curl_exec($curl), true); curl_close($curl);
三、效果演示
优惠搜索
商户搜索
团购搜索
打开团购中的链接后
四、试用账号
原文:http://www.cnblogs.com/txw1958/archive/2013/05/23/weixin-if30-dianping.html
---------------------------------------------------------------------------------------------------------------------------
微信公众平台消息接口开发(30)大众点评商户信息团购及优惠券查询相关推荐
- 微信公众平台消息接口开发(2)-封装weixin.class.php
微信公众平台消息接口开发(2)-封装weixin.class.php 一.封装weixin.class.php 由于微信公众平台的通信使用的是特定格式的XML数据,每次接受和回复都要去做一大堆的数据处 ...
- 微信公众平台消息接口开发(1)
原文链接 现在微信很热,微信公众平台的应用也很热,其实微信公众平台消息接口开发并不难,只要有接口调用就OK了. 要开发微信公众平台上的应用,得准备什么呢? 至少要有一个公众账号.服务器.域名这三样东西 ...
- 微信公众平台消息接口开发(4)天气预报
一.请求数据 首先需要能有取得天气数据的接口,这样的接口网上有很多.比如google, yahoo,天气网都提供天气接口 方倍工作室的API已经能提供全国各地的天气预报,使用方倍的API无需再建立城市 ...
- 微信公众平台消息接口开发(34)微信墙之表白墙/婚礼墙/晚会墙/会议墙/晒单墙/照片墙/历史墙...
微信公众平台开发模式 微信 公众平台 消息接口 开发模式 企业微信公众平台 微信墙 婚礼墙/晚会墙/会议墙/晒单墙/照片墙/历史墙 历史上的今天 作者:方倍工作室 原文: http://www.c ...
- php网站怎么对接微信群,PHP对接微信公众平台消息接口开发流程教程
PHP(外文名:PHP: Hypertext Preprocessor,中文名:"超文本预处理器")是一种通用开源脚本语言.语法吸收了C语言.Java和Perl的特点,利于学习,使 ...
- php对接微信提醒,PHP对接微信公众平台消息接口开发流程教程
PHP对接微信公众平台消息接口开发流程教程 发布于 2015-02-15 08:54:13 | 157 次阅读 | 评论: 1 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hyperte ...
- php微信公众号怎么开发_PHP对接微信公众平台消息接口开发流程详解及实例
这篇文章主要介绍了PHP对接微信公众平台消息接口开发流程,如何使用PHP版接口操作公众平台消息,需要的朋友可以参考下 一.写好接口程序 在你的服务器上上传好一个接口程序文件内容如下: 代码如下:< ...
- 微信公众平台消息接口开发(34)微信墙之表白墙/婚礼墙/晚会墙/会议墙/晒单墙/照片墙/历史墙
微信公众平台开发模式 微信 公众平台 消息接口 开发模式 企业微信公众平台 微信墙 婚礼墙/晚会墙/会议墙/晒单墙/照片墙/历史墙 历史上的今天 作者:方倍工作室 原文: http://www.c ...
- 微信公众平台消息接口开发(13)多语种互译
微信公众平台消息接口 微信公众平台API 微信开发模式 多语种翻译 多语言互译 Microsoft Translator 方倍工作室 Paraphrase API 10 out of 11 rated ...
最新文章
- 图像迁移风格保存模型_CV之NS:图像风格迁移(Neural Style 图像风格变换)算法简介、关键步骤配图、案例应用...
- java中class_JAVA中的Class类
- unity, 内存profile,ImageEffects Temp和Unity GI SystemTex RGBM
- mysql 1个月多少天_在MySQL日期间隔中,1个月是否与30天相同? 1个季度与3个月相同吗?等等?...
- mysql 同步中历史记录_[Mysql]备份同库中一张表的历史记录 insert into ..select
- 用Tableau制作10种漂亮的柱形图
- python web框架 多线程_Django基础知识 web框架的本质详解
- 编写五子棋的完整python代码_python实现五子棋游戏
- 关于 ApacheCN 未来发展的思考 2019.5.20
- 百倍性能的PL/SQL优化案例(r11笔记第13天)
- PaddleOCR二次全流程——2.使用StyleText合成图片
- 逻辑学学习.14 --- 谓词逻辑(六):数量量词和摹状词
- 蓝桥杯模拟赛 青出于蓝而胜于蓝
- 基于74hc573的数码管模块测试
- 服务器基础知识全解(汇总版)
- /etc/passwd,/etc/shadow文件详解,及密码复杂度设置
- windows系统镜像修复计算机,如何修复:Windows无法在此计算机上查找系统映像
- [React Native]导航器Navigator
- CuraEngine VS2017
- 一些有趣的鸽巢原理的题目