返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >PHP Thinkphp5.0实现抖音团购券码核销
  • 334
分享到

PHP Thinkphp5.0实现抖音团购券码核销

phpandroid开发语言 2023-09-03 19:09:39 334人浏览 薄情痞子
摘要

上一篇文章我们说到项目里需要用到美团api接口来实现卡券核销的功能。 那么这篇文章就讲一下,如何实现抖音团购券码的核销功能。 近期项目需要,抖音团购的券码核销,话不多说,直接上代码吧! 凑合着用吧,反

上一篇文章我们说到项目里需要用到美团api接口来实现卡券核销的功能。
那么这篇文章就讲一下,如何实现抖音团购券码的核销功能。
近期项目需要,抖音团购的券码核销,话不多说,直接上代码吧!
凑合着用吧,反正能销,具体业务需要自己写

PHPclass DouyinTest{    protected $Appid = '';//appid    protected $AppSecret = '';//秘钥    protected $pro_id = ''; // 门店id        public function DouyinAfterVerification(){        $encrypted_data = '100000000000000';   // code  格式 100000000000000        $url = 'https://open.douyin.com/Goodlife/v1/fulfilment/certificate/prepare/';        $client_token = $this->getClientToken();        if(!$client_token){            die('token 获取失败');        }        $res = $this->prepareCertificate($client_token,'',$encrypted_data);        $v = $res['data']['verify_token'];        $code = $res['data']['certificates'][0]['encrypted_code'];        $hexiao = $this->verifyCoupon($v,$client_token,$this->pro_id,[$code]);        //核销成功后的所有信息都在这里 打印自己看就行        //所有的逻辑根据自己项目需要来自己写。        print_r($hexiao);    }        public function prepareCertificate($access_token, $encrypted_data, $code = null) {        $url = 'Https://open.douyin.com/goodlife/v1/fulfilment/certificate/prepare/';        $params = [];        if (!empty($encrypted_data)) {            $params['encrypted_data'] = urlencode($encrypted_data);        } elseif (!empty($code)) {            $params['code'] = $code;        } else {            throw new Exception("encrypted_data 和 code 参数不能同时为空");        }        $back = $this->douyinRequest($url,$params,$access_token,0);        return $back;    }        public function verifyCoupon($verifyToken,$client_token, $poiId, $encryptedCodes, $codes = null, $orderId = null, $codeWithTimeList = null, $voucher = null) {        $url = 'https://open.douyin.com/goodlife/v1/fulfilment/certificate/verify/';        $data = array(            'verify_token' => $verifyToken,            'poi_id' => $poiId,            'encrypted_codes' => $encryptedCodes,            'codes' => $codes,        );        $response = $this->douyinRequest($url,$data,$client_token);        return $response;    }        public function getClientToken(){        //正式环境:https://open.douyin.com/oauth/client_token/        //沙盒环境:https://open-sandbox.douyin.com/oauth/client_token/        $url = 'https://open.douyin.com/oauth/client_token/';        $param = [            'client_key' => $this->Appid,            'client_secret' => $this->AppSecret,            'grant_type' => 'client_credential'        ];        $res = $this->requestUrl($url,$param);        $back = JSON_decode($res,true);        if($back['data']['error_code'] == 0){            return $back['data']['access_token'];        }    }        public function requestUrl($url,$data=null,$https=true,$method='post'){        //1.初始化url        $ch = curl_init($url);        //2.设置相关的参数        //字符串不直接输出,进行一个变量的存储        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);        //判断是否为https请求        if($https === true){            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);            curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);        }        //判断是否为post请求        if($method == 'post'){            curl_setopt($ch, CURLOPT_POST, true);            curl_setopt($ch, CURLOPT_POSTFIELDS, $data);        }        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-type:multipart/fORM-data'));        //3.发送请求        $str = curl_exec($ch);        //4.关闭连接        curl_close($ch);        //6.返回请求到的结果        return $str;    }        public function douyinRequest($url,$data = [],$client_token = '',$is_post = 1){        $headers = [            'Content-Type: application/json',            'access-token: ' . $client_token,        ];        $curl = curl_init();        if($is_post){            curl_setopt_array($curl, array(                CURLOPT_URL => $url,                CURLOPT_RETURNTRANSFER => true,                CURLOPT_ENcoding => '',                CURLOPT_CUSTOMREQUEST => 'POST',                CURLOPT_POSTFIELDS => json_encode($data),                CURLOPT_HTTPHEADER => $headers,            ));        }else{            $data = http_build_query($data);            curl_setopt_array($curl, [                CURLOPT_URL => "$url?$data",                CURLOPT_RETURNTRANSFER => true,                CURLOPT_HTTPHEADER => $headers,            ]);        }        $response = curl_exec($curl);        curl_close($curl);        return json_decode($response,true);    }}

以上的代码是抖音卡券核销的功能。有需要的小伙伴记得关注、收藏。

来源地址:https://blog.csdn.net/weixin_47736740/article/details/132087789

--结束END--

本文标题: PHP Thinkphp5.0实现抖音团购券码核销

本文链接: https://lsjlt.com/news/392717.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • PHP Thinkphp5.0实现抖音团购券码核销
    上一篇文章我们说到项目里需要用到美团API接口来实现卡券核销的功能。 那么这篇文章就讲一下,如何实现抖音团购券码的核销功能。 近期项目需要,抖音团购的券码核销,话不多说,直接上代码吧! 凑合着用吧,反...
    99+
    2023-09-03
    php android 开发语言
  • 抖音团购券码核销PHP
    近期项目需要,抖音团购的券码核销,网上找了好久也没找到,只能自己手敲了。。。话不多说,直接上代码吧! 凑合着用吧,反正能销,具体业务还得自己码代码了 ...
    99+
    2023-09-08
    php
  • PHP Thinkphp5.0对接美团API接口 实现卡卷核销功能
    好久没有更新文章了。不知道关注我的小伙伴们是不是已经不在关注我了。最近在忙着一些推广运营的事情,所以没有更新, 这几天接到一个项目,需要对接美团API接口,实现核销功能。现在就来给大家展示具体代码, ...
    99+
    2023-09-17
    php android 开发语言
  • 如何在PHP中实现微信卡券核销接口
    随着电商行业的蓬勃发展,越来越多的企业开始了解和使用微信卡券功能,而为了更好地与用户互动,微信卡券核销接口的使用成为了一个必不可少的环节。本文将介绍如何在PHP中实现微信卡券核销接口。一、开发准备1.微信公众平台账号2.PHP开发环境3.微...
    99+
    2023-05-14
    PHP 微信卡券 核销接口
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作