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

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

陈杰1年前 (2021-09-24)PHP2420


需要用到的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接拼多多的多多进宝,实现淘客功能

没有最新的文章了...

相关文章

Lumen框架报错Cannot declare class Event, because the name is already in use

Lumen框架报错Cannot declare class Event, because the name is already in use

Lumen框架报错信息Cannot declare class Event, because the name is already in use(1/1) ErrorExceptionCa...

通过supervisor管理laravel的queue队列

通过supervisor管理laravel的queue队列

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

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

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

php对接七牛云短信验证码实战

短信验证码登录的用处非常的大,登录,注册,修改密码,安全相关的啥都可以干。选定的七牛云短信是因为存储也是用的七牛云,七牛的sdk都加载进来了,也懒得去换其他的厂家了。下面上代码:Controller层...

lavel对接个推别名推送

lavel对接个推别名推送

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

laravel分表model映射的思路

预先估计会出现大数据量并且访问频繁的表,将其分为若干个表这种预估大差不差的,论坛里面发表帖子的表,时间长了这张表肯定很大,几十万,几百万都有可能。 聊天室里面信息表,几十个人在一起一聊一个晚上,时间长...

发表评论

访客

看不清,换一张

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