淘宝API开发(二)淘宝API接口功能测试

备注:请看2010-09-14写的 淘宝API开发系列-淘宝API相关了解 

 

 

 

 

 

注:无法上传截图,提示system.net.webexception错误,所以本篇的效果图无法展示,请谅解,待下次再试上传

 

淘宝API开发(二)淘宝API接口功能测试

上篇介绍了淘宝开放的API接口,根据功能说明,我们对几个接口进行测试,其他的接口,可以照猫画虎。点击任意接口,在功能描述页面,调用级别apiType,apitype分别有三个值:

apiType = 1 ,调用时需要ISV签名和认证

apiType
= 2 ,调用时需要ISV签名和认证,同时需要用户授权确认

apiType
= 3 ,调用时需要ISV签名和认证,可选用户授权确认(授权后可获取相关用户隐私信息)

我们分别找

taobao.items.get taobao.items.onsale.get 接口进行测试,一个不用授权,一个用授权,具体授权的意思就是,掌柜没给你授权,你就不能访问或修改其淘宝店的内容。

打开vs2008,新建网站,如下

图略,原因在开头说明了

 

简单说下,taobaiApi.cs,主要是各个接口的方法,如:

 

ContractedBlock.gif ExpandedBlockStart.gif Code
ExpandedBlockStart.gifContractedBlock.gif /**//// <summary>

       
/// 获取某会员商品列表达式

       
/// </summary>

       
/// <param name="q"></param>

       
/// <param name="fields"></param>

       
/// <param name="page_no"></param>

       
/// <param name="page_size"></param>

       
/// <param name="nicks"></param>

       
/// <returns></returns>


        
public XmlDocument taobao_items_get(string q, string fields, int page_no, int page_size, string nicks)

ExpandedBlockStart.gifContractedBlock.gif        
{

    

            Util.ParamsBuild pb 
= new Util.ParamsBuild(SessionID, "taobao.items.get");

 

            pb.AddParam(
"fields", fields);//"iid,delist_time"

            pb.AddParam(
"v", VERSION);

            
if (q != string.Empty) 

                     pb.AddParam(
"q", q);

            
if(page_no != 0)

             pb.AddParam(
"page_no", page_no);

            
if(page_size != 0)

                 pb.AddParam(
"page_size", page_size);

            
// / 

           pb.AddParam(
"nicks", nicks);

            
//if(order_by != "")

            
//    pb.AddParam("order_by", order_by);

            
string data = pb.GetURL();

 

            
return Util.HttpRequest(data);

        }


  

API接口中,着重说下sip_sign 这个参数,这个参数是API接口传递参数的Md5加密,传递的参数是按字母顺序升序排列,也就是说要从a-z的顺序排列后,通过MD5加密得到的。

所有参数保存到由Util.ParamsBuild类实例中具体的看下代码吧

1不用授权接口taobao.items.get接口, 此接口方法用以搜索商品信息

以淘宝掌柜鑫名品为例,查看其宝贝列表,我无意冒犯掌柜鑫名品, 鑫名品请谅解.

运行后效果如图:

图略,原因在开头说明了

 

主要代码

   

ContractedBlock.gif ExpandedBlockStart.gif Code
 1ExpandedBlockStart.gifContractedBlock.gif/**//// <summary>
 2
 3    /// 获取产品列表
 4
 5    ///// </summary>

 6
 7    private void GetProList()
 8
 9ExpandedBlockStart.gifContractedBlock.gif    {
10
11        //掌柜鑫名品,查看其宝贝列表,我无意冒犯掌柜鑫名品
12
13ContractedSubBlock.gifExpandedSubBlockStart.gif        绑定到GridView1#region 绑定到GridView1
14
15        CreatTable();
16
17        myapi = new taobaoApi();
18
19        XmlDocument mydoc = myapi.taobao_items_get("""iid,title,nick,type,cid,pic_path,delist_time,price,post_fee"00"鑫名品");
20
21        XmlNodeList mylist = mydoc.SelectNodes("rsp/item");
22
23        int num = int.Parse(mydoc.SelectSingleNode("/rsp/totalResults").InnerText);
24
25        try
26
27ExpandedSubBlockStart.gifContractedSubBlock.gif        {
28
29            AddXmlNodesToTable(mylist);
30
31 
32
33            //this.Label1.Text = "共有 " + num.ToString() + " 商品";
34
35            this.GridView1.DataSource = dt;
36
37            this.GridView1.DataBind();
38
39        }

40
41        catch (Exception err)
42
43ExpandedSubBlockStart.gifContractedSubBlock.gif        {
44
45            string test = err.Message;
46
47        }

48
49        #endregion

50
51 
52
53ContractedSubBlock.gifExpandedSubBlockStart.gif        返回string值,主要是根据string内容,生成xmlnodelist#region 返回string值,主要是根据string内容,生成xmlnodelist
54
55 
56
57        //myapi = new taobaoApi();
58
59        //string mydoc = myapi.taobao_items_get2("", "iid,title,nick,type,cid,pic_path,delist_time,price,post_fee", 0, 0, "鑫名品");
60
61        //divMeg.InnerText = mydoc;
62
63        #endregion

64
65 
66
67 
68
69}

70
71

 

这个接口我写了两个实现方法,一个返回XmlDocument,一个返回string,接口方法返回string型的,主要是让大家看看接口里的源数据格式,可以根据格式运行xml操作,如, XmlNodeList mylist = mydoc.SelectNodes("rsp/item");

2.需要授权的接口测试:taobao.items.onsale.get, 此接口方法以实现得到当前会话用户(必须为卖家)的出售中商品列表

运行后,返回如下代码

 

ContractedBlock.gif ExpandedBlockStart.gif Code
<?xml version="1.0" encoding="utf-8" ?><error_rsp><code>1004</code><msg>needBinduser</msg><url>http://sip.alisoft.com/sip/login?sip_apiname=taobao.items.onsale.get&amp;sip_appkey=21824&amp;sip_sessionid=dcd2dae7-7f13-4af8-9346-c26d9e28a667&amp;sip_apptype=1&amp;sip_applevel=level1</url></error_rsp>

 

http://isp.alisoft.com/apidoc/api/apiIndex.html#isp_taobao-5-29查到

 

1004

needBinduser

需要绑定用户

原因:在调用此api时,isp要求用户验证并绑定(登录)。在请求中没有带sip_usertoken参数,无法进行绑定

需要绑定用户,说白了呢,就是要登录下淘宝,进行一下授权,当然,我不知道鑫名品密码,就是自己的淘宝帐号演示了,隐掉divMeg.InnerText = content; 恢复Response.Redirect(url.InnerText + "&sip_redirecturl=" + sip_redirecturl);

再次运行,如下 (图略,原因在开头说明了)

 

输入淘定帐号与密码后,如下:(图略,原因在开头说明了)

点击确认后,出现 (图略,原因在开头说明了)

 

代码下载

 

参考

http://www.cnblogs.com/edobnet/archive/2009/02/05/1384526.html

 

值得看的贴子:

API指南】如何上传和修改商品http://forum.alisoft.com/viewthread.php?tid=2711&extra=page%3D2

 

用户绑定的参数

http://forum.alisoft.com/read.php?tid=19220&page=ea

 

更新商品的java demo

http://forum.alisoft.com/read.php?tid=4940

 

taobao.item.updatetaobao.item.addimage参数的思考

http://forum.alisoft.com/read.php?tid=11316

 

求助:发个添加商品图片的DEMO,谢谢!

http://forum.alisoft.com/read.php?tid=25766

 

备注:希望对淘宝API开发入门者有所帮助

转载于:https://www.cnblogs.com/kevinlzf/archive/2009/05/04/1448567.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值