当前位置:首页 > PHP > 正文内容

php接淘宝联盟,阿里妈妈,实现淘宝客功能

陈杰2年前 (2021-09-24)PHP3264


需要用到的sdk在淘宝开放平台自行下载


生成淘宝需要用到的配置文件

private function get_tb_config()
{
   $config = ConfigModel::get_config();
   require_once base_path() . '/extend/taobaoke/TopSdk.php';
   $top = new \TopClient($config["tb_appid"], $config["tb_appkey"]);
   return $top;
}


获取商品列表接口,同时可以用到搜索商品的功能


public function shop_list_tb(Request $request)
   {
       $id      = (int)$request->input("id");
       $keyword = trim($request->input("keyword"));
       if ($keyword and $keyword != '') {
           $top = $this->get_tb_config();
           $req = new \TbkDgMaterialOptionalRequest();
           $req->setPageSize($request->get("count"));
           $req->setAdzoneId("111641500058"); //自有 111561200325
           $req->setPageNo($request->get("offset") / $request->get("count") + 1);
           $req->setQ($keyword);
           $data = $top->execute($req);
           if (isset($data->result_list)) {
               return self::returnMsg($data->result_list->map_data);
           }
           return self::errorMsg("发生了错误");
       }
       $cate = ShopCateModel::get_by_id($id);
       if (isset($cate)) {
           $top = $this->get_tb_config();
           $req = new \TbkDgOptimusMaterialRequest();
           $req->setPageSize($request->get("count"));
           $req->setAdzoneId("111641500058");
           $req->setPageNo($request->get("offset") / $request->get("count") + 1);
           $req->setMaterialId($cate["cate_id"]);
           $data = $top->execute($req);

//            dd($data);
           if (isset($data->result_list)) {
               return self::returnMsg($data->result_list->map_data);
           }
           return self::errorMsg("发生了错误");
       }
       return self::errorMsg("没有找到该分类");
   }



获取商品详情接口

public function shop_detail_tb(Request $request)
{
   $id  = $request->input("id");
   $top = $this->get_tb_config();
   $req = new \TbkItemInfoGetRequest();
   $req->setNumIids($id);
   $req->setPlatform("2");                 // 1.pc   2.无线
   $req->setIp($request->ip());                    // 客户端请求ip
   $data = $top->execute($req);
   if (isset($data->results))
       return self::returnMsg($data->results->n_tbk_item[0]);
   return self::errorMsg("没有找到该商品");
}



生成淘口令接口

public function shop_buy_tb(Request $request)
{
   $id  = $request->input("id");
   $url = $request->input("url");
   $top = $this->get_tb_config();
   $req = new \TbkTpwdCreateRequest;
   $req->setUrl("https:" . $url);
   $data = $top->execute($req);
   if (isset($data->data) and isset($data->data->model)) {
       return self::returnMsg($data->data);
   }
   return self::errorMsg("生成淘口令失败");
}


注意这里生成淘口令很扯,拼多多是根据商品id去生成的,而淘宝是通过一个url去生成的。。

至于这个url怎么来的,还不是商品详情接口拿到的,而且商品列表里面拿到的。。所以在前端处理的时候需要前端同学在页面跳转的时候自行把这些参数都附带上哦

image.png

扫描二维码至手机访问

扫描二维码推送至手机访问。

版权声明:本文由何烦过虎溪发布,如需转载请注明出处。

转载请注明出处:http://95shouyou.com/?id=47

分享给朋友:
返回列表

上一篇:php接拼多多的多多进宝,实现淘客功能

没有最新的文章了...

相关文章

利用workerman实现webrtc实时音视频通话

利用workerman实现webrtc实时音视频通话

实现原理利用workerman的websocket实现实时消息传递。webrtc自带p2p功能,利用STUN中继服务器实现webrtc实时音视频看看我们的前端文件,只是一个单页面<html>...

laravel个推设置别名

laravel个推设置别名

上一篇文章我们说过了怎么用laravel接个推的官方sdk实现个推推送和厂商离线推送,因为我们要用到别名推送,而前端又用到的是unipush,在前端去绑定别名的难度肯定要大一点,所以就有一个思路就是,...

Lumen框架报错Class session does not exist

Lumen框架报错Class session does not exist

由于lumen框架是为速度而生的 Laravel 框架,所以移除了session的支持,虽然在ide中代码提示可以敲出Session::put()方法出来,但是最终还是提示的是Class sessio...

通过supervisor管理laravel的queue队列

通过supervisor管理laravel的queue队列

配置文件[program:queue]command=php artisan queue:work redis --tries=3 --delay=3directory=/www/wwwroot/sh...

lavel对接个推别名推送

lavel对接个推别名推送

新项目采用uniapp开发,需要用到推送功能,之前接过极光,其中的一些坑都踩过了,但是unipush用的是个推的推送,那就只有重写踩坑了。composer  require&nbs...

php对接支付宝转账到第三方接口实战

公司项目有一个用户钱包系统,用户创作的内容可以收到游客的打赏,当然就需要提现的接口了。最终选定的是支付宝转账接口,公司代收账户直接打款给用户绑定的支付宝账号,再也不用人工手动打款了。上代码准备好工具,...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。