使用大淘客接口获取产品数据

我的梦境 提交于 2019-11-28 01:27:34
使用大淘客获取优惠券产品列表
 
1.申请大淘客账号
2.申请开放平台权限(一般1-3天就可以开通成功)
3.创建应用,创建成功如图所示

 
这个以9块9包邮为例,获取数据(9.9文档 http://www.dataoke.com/pmc/api-d.html?id=15)
所用到的自定义函数函数如下
 /*
* 发起GET网络提交
* @params string $url : 网络地址
*/
function https_get($url)
{
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
    curl_setopt($curl, CURLOPT_HEADER, FALSE) ;
    curl_setopt($curl, CURLOPT_TIMEOUT,60);
    if (curl_errno($curl)) {
        return 'Errno'.curl_error($curl);
    }
    else{$result=curl_exec($curl);}
    curl_close($curl);
    return $result;
}
 
/**参数加密
 * @param $data
 * @param $appSecret
 * @return string
 */
function dtk_makeSign($data, $appSecret)
{
    ksort($data);
    $str = '';
    foreach ($data as $k => $v) {
 
        $str .= '&' . $k . '=' . $v;
    }
    $str = trim($str, '&');
    $sign = strtoupper(md5($str . '&key=' . $appSecret));
    return $sign;
}
 
这里我用的是tp5.1 ,如果你使用其他的框架,请更改写法,原理差不多一样
<?php
namespace app\api\controller;
use think\facade\Request;
use think\Db;
 
class Tbk  extends Base
{
  
    public function __construct (){
        $this->host = 'https://openapi.dataoke.com/api/goods/get-goods-list';
        $this->appKey = '5d5b9****c103';//换成自己的应用的key
        $this->appSecret = 'd7fa1e55d24*********9fc0a6015';//换成自己的应用的Secret
    }
    public function nine9(){
        //默认必传参数
        $data = [
            'appKey' => $this->appKey,
            'version' => '1',
        ];
        //加密的参数
        $data['sign'] = dtk_makeSign($data,$this->appSecret);
        //拼接请求地址
        $url = $this->host .'?'. http_build_query($data);
        //执行请求获取数据
        $output = https_get($url);
        echo "<pre>";
        var_dump(json_decode($output));
    }
  
}
 
获得到的数据如下图所示,你也可以根据文档填入相对应的参数

 
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!