PHP 对接美团公共点评团购券(门票)的开拓步调

一、成果扼要先容

1、按照需求,用户在美团公共点评中所购置的门票在本身的系统上可以核销,同时把核销信息存储到本身的系统里。

2、美团点评API文档地点:https://open.dianping.com/document/v2?rootDocId=5000

二、开拓步调:

1、用点评管家账号登录文档,相应文档说明:https://open.dianping.com/document/v2?docId=6000136&rootDocId=1000

2 、选好本身相应的应用型,审核通过之后,就可以用平台系统的测试的数据就行接口挪用

3、在公共点评app购置相应票,按照验券核销API文档(按照业务需求选择的范例是自用型)调取查询券、验券即核销券的接口,代码如下:

//查询券、验券 public function prepare(){ // $arr 为数组 内里为应用参数 $appKey = "1ef04****e3a8"; //key $secret = "dd8a291f9f*****4e3fbd9be6ff"; //秘钥 $timestamp = date('Y-m-d H:i:s'); $format = 'json'; $v = 1; $sign_method = 'MD5'; $qr_code = '257***4228'; $open_shop_uuid = '34d5902420ca****48e941a38d773'; $session = 'bbf7059256aaf3f1****3b4d9c0816cf819b7'; $data = [ 'app_key' => $appKey, 'timestamp' => $timestamp, 'sign_method' => $sign_method, 'format' => $format, 'v' => $v, 'session' => $session, ]; $arr = [ 'requestid'=>'123', 'receipt_code' => $qr_code, //'qr_code'=>$qr_code, 'open_shop_uuid' => $open_shop_uuid, //'count'=>1, //'app_shop_account' =>'test', // 'app_shop_accountname' =>'test1', ]; $data = array_merge($data, $arr); ksort($data); $sign = $this->cal_sign($secret, $data);//获取签名 $data['sign'] = $sign; // $data['count'] = $sign; // $data['app_shop_account'] = $sign; // $data['app_shop_accountname'] = $sign; $data = array_merge($data, $arr); $postdata = http_build_query($data); $url = 'https://openapi.dianping.com/router/tuangou/receipt/prepare';//输码查询券 //$url = 'https://openapi.dianping.com/router/tuangou/receipt/scanprepare';//扫码查询券 //$url = 'https://openapi.dianping.com/router/tuangou/receipt/consume';//验券 $tmpInfo=$this->curl_post($url,$postdata); var_dump($tmpInfo); } /** * 计较签名 * * @param $app_secret 三方app_secret * @param $req_param 请求参数荟萃,包罗民众参数和业务参数 * @return string md5签名 */ function cal_sign($app_secret, $req_param) { // 排序所有请求参数 ksort($req_param); $src_value = ""; // 凭据key1value1key2value2...keynvaluen拼接 foreach ($req_param as $key => $value) { $src_value .= ($key . $value); } //计较md5 return md5($app_secret . $src_value . $app_secret); } //post请求 private function curl_post($url,$postdata){ $curl = curl_init(); // 启动一个CURL会话 curl_setopt($curl, CURLOPT_URL, $url); // 要会见的地点 curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来历的检测 curl_setopt($curl, CURLOPT_HTTPHEADER, array( 'Expect:' )); // 办理数据包大不能提交 curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 利用自动跳转 curl_setopt($curl, CURLOPT_AUTOREFERER, 1); // 自动配置Referer curl_setopt($curl, CURLOPT_POST, 1); // 发送一个通例的Post请求 curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata); // Post提交的数据包 curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 配置超时限制防备死循 curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容 curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded')); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回 // curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书查抄 $tmpInfo = curl_exec($curl); // 执行操纵 if (curl_errno($curl)) { echo 'Errno' . curl_error($curl); } curl_close($curl); // 要害CURL会话 $tmpInfo=json_decode($tmpInfo,true); return $tmpInfo; } //get请求 private function curl_get($url) { //初使化curl $curl = curl_init(); //请求的url,由形参传入 curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来历的检测 curl_setopt($curl, CURLOPT_HTTPHEADER, array( 'Expect:' )); // 办理数据包大不能提交 //将获得的数据返回 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); //不处理惩罚头信息 curl_setopt($curl, CURLOPT_HEADER, 0); //毗连高出10秒超时 curl_setopt($curl, CURLOPT_TIMEOUT, 30); curl_setopt($curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 利用自动跳转 curl_setopt($curl, CURLOPT_AUTOREFERER, 1); // 自动配置Referer curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容 curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded')); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回 //执行curl $output = curl_exec($curl); if (curl_errno($curl)) { echo 'Errno' . curl_error($curl); } //封锁资源 curl_close($curl); //返回内容 $tmpInfo=json_decode($output,true); return $tmpInfo; }

运用平台提供的相应参数,流程能顺利走通。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsjxdp.html