日期:2014-05-16  浏览次数:20539 次

PHP实现调用淘宝SDK开放接口返回天猫或淘宝商品详情

在淘宝开发平台申请到app key及app secret并在开放平台上的app tools在线测试成功以后,就可以在自己的项目中使用淘宝SDK来调用淘宝或天猫的商品详情了,包括标题、图片、价格等等所有信息都可已返回。

?

1.整体思路:

?

首先需要下载SDK工具包(我的是在个人中心->网站[左侧边栏]->查看->网站概况页面底部有下载链接)。

?

将下载到的SDK工具包解压到某个目录下:

?

taobaosdk

?

然后在该目录下创建两个文件:index.php用于提交宝贝详情页链接和返回结果的显示,taobao.php用于处理提交过来的url并从中获 取宝贝id,然后调用淘宝SDK相关类和方法将宝贝详情以json格式返回给index.php。大致思路如此,相关代码如下:

?

2.index.php代码:

<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<input type="text" size="64"/>
<button onclick="getProductInfo()">获取商品信息</button>
<div id="product">
商品名称:<h3></h3>
商品价格:<span id="price"></span><br/>
购买链接:<span id="buylink"></span><br/>
商品图片:
<div id="images">
</div>
</div>

<script type="text/javascript">
    function getProductInfo(){
        $.post('taobao.php',{url:$("input").val()},
        function(data){
            $("h3").html(data.item.title);
            $("#price").html(data.item.price);
            $("#buylink").html(data.item.detail_url);
            //alert(data.item.item_imgs.item_img.length);
            var img_nums = data.item.item_imgs.item_img.length;
            for(var i=0;i<img_nums;i++){
                $("#images").append("<img src='"+data.item.item_imgs.item_img[i]['url']+"' width=235 height=235>&nbsp;&nbsp;");
             }
        },'json');
}
</script>?

?

3.taobao.php代码:

<?php

require_once('TopSdk.php');

if (isset($_POST['url'])):
    $url = $_POST['url'];
    $pattern = "/http:\/\/[\w]+.[\w]+.com\/item.htm\?.*?id=([\d]+).*?/";
    //正则提取淘宝或天猫宝贝id
    preg_match($pattern, $url, $id);
    $c = new TopClient;
    $c->appkey = your_appkey;
    $c->secretKey = 'your_secretkey';
    $c->format = 'json';
    $req = new ItemGetRequest;
    $req->setFields("detail_url,title,price,item_img");
    $req->setNumIid($id[1]);
    $resp = $c->execute($req);
    echo json_encode($resp);
endif;
?>

?

4.测试结果:

?

淘宝宝贝

?

商品链接:

http://item.taobao.com/item.htm?spm=a230r.1.14.43.SjOPaH&id=21932239468&_u=hc3uuihb673

?

获取结果:

taobao

?

天猫宝贝

?

商品链接:

http://detail.tmall.com/item.htm?spm=a230r.1.14.1.SjOPaH&id=24058364609&ad_id=&am_id=&cm_id=140105335569ed55e27b&pm_id=

?

获取结果:

tianmao

?

?

农夫庄园网站创始人,专注Web编程,此外对读书、旅行、历史、养生颇有兴趣。本着开源与共享精神,本站文章请随意转载,但请注明出处:http://www.icultivator.com/p/4139.html

?

?sdk: http://api.taobao.com/myresources/standardSdk.htm?spm=0.0.0.0.ID9FuF