您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 轻轻松松使用asp做api淘宝客
轻轻松松使用asp做api淘宝客写在前面的话在2008年由本人开发asp版本的api程序让淘客程序进入一个新的里程碑,在阿里妈妈更新api接口2.0后之前程序已无法使用,期间由于工作的原因也没有再次更新,最近发现很多站长需求asp的淘宝客程序所以做了一个asp淘客的视频教程,但是对于一些新手可能看不懂视频,都加我的QQ要我提供视频源程序,这是一种偷懒的行为。今天特意做一个文字教程算是给asp开发站长的一份国庆大礼吧。使用演示站:站长:吴林祥一、准备工作了解淘宝客什么是淘宝客?淘宝客就是帮助淘宝卖家推广商品并按照成交效果获得佣金的人(可以是个人或者网站),之前叫淘客,自2009年1月12日起,正式更名为淘宝客。“淘宝客”是指帮助淘宝卖家推广商品赚取佣金的人。只要获取淘宝商品的推广链接,让买家通过您的推广链接进入淘宝店铺购买商品并确认付款,就能赚取由卖家支付的佣金,无需投入成本,无需承担风险,最高佣金达商品成交额的50%。目前最为火爆的淘宝客类型为淘宝api接口调取和单品的推广为主,而主要的程序语言已php和.Net居多。具体形式淘宝客推广目前分成2大类,一个专业性质的淘宝客返利网站,另一类是利用CMS或博客,微博等其他可传播的媒介进行淘宝客推广。推广形式推广单件商品、推广整个类目商品、推广整个店铺、搜索推广、页面推广、智能广告推广(详细内容请登录查询)申请淘宝api淘宝api申请这里就不多做说明,详细情况请百度一下.今天就设么多,你需要做的就是申请api的App_key和secretCode,并下载api文档和通读api文档,明天我将带领大家一起了解一下api文档的。下载地址:昨天我让大家申请了App_key和secretCode,并下载api文档和通读api文档,今天我就带领大家一起看一下api文档,我们要从淘宝获取数据需要使用哪几个常用api接口。直接看下图:我们要从淘宝获取数据主要设计我用红线标出来的2个接口,一个是查询淘宝客推广的商品(必须的),二是查询淘宝客推广的商品详细信息,如果你的网站不需要显示详细信息可以那就更简单了,例如演示网站在文章详细界面通过关键字+ajax调取相关产品,点击直接进入淘宝就不需要详细页面调取了。这种方式将在后面讲到,方便个位站长做插件,让网站更灵活。在做api应用的时候会涉及到API用户授权,但是在我们使用淘宝客api的时候不需要API用户授权,而一些系统级别输入参数并没有列出那些是必须的,这里我们只需要了解应用级的一些参数。通过文档我们知道应用级参数有几项是必须输入有几项是特殊可选和N多项可选,应用级参数fields是必不可少的,这个也是我们需要查询的一些字段。特殊可选主要是Nick和PId以及keyword和Cid的区别,但是两者必须要有一个,输入了Nick可以不用PId,有的PId可以不用Nick,通样有了关键字Keyword可以不输入Cid,有了Cid也可以不要输入Keyword,他们两两之间的关系仔细看文档右边的说明就可以理解,在这里我也不多废话了免得被拍砖。废话一大堆我们只是说了一下taobao.taobaoke.items.get(查询淘宝客推广商品)的文档。那么taobao.taobaoke.items.detail.get(查询淘宝客推广商品详细信息)的文档还请同学们自己去查看,并做好以下准备嘿嘿,说是准备其实就是给你布置一点作业,方便我们明天的课程。?作业内容:请按以下格式在记事本里准备好你的数据并保存好app_Key=secretCode=pid=Nick=””fields=iid,title,nick,pic_url,…cid=””keyword=api的调用方式分为http调用方式和https免签名调用方式,而我们这里讲解的是以http调用方式获取数据,获取数据格式为xml,加密方式使用32位大写MD5值。详细内容如下(转自淘宝开放平台)已了解的可跳过这一节。1、TOP接口调用原理调用TOP的API接口时,即是与TOP服务器的数据进行一次交互的过程,API调用接口时,API调用端(即用户调用接口运行的程序),调用API服务端的数据(即TOP提供的服务器,可调用淘宝上的数据)时的交互流程。2、数据获取方式淘宝开放平台调用接口都是通过调用API来实现的,所有的API都是基于REST协议,可兼容多种编程语言。只要能够按照top的规范POST调用参数就可以取得相应接口返回的淘宝数据。3、调用入口环境地址,即调用接口(API)时,都通过访问该地址,来获取该接口需要获取的数据正式环境:沙箱环境:注:淘宝沙箱环境是淘宝开放平台(TOP)提供给独立软件开发商的测试环境。沙箱环境模拟线上真实的淘宝环境,淘宝商家可以在沙箱环境中完全仿真测试TOP接口的功能;沙箱环境地址:、调用参数调用接口(API)时,必须传入的系统级参数以及应用级参数,该接口更多输入参数以及返回结构详见API文档5、系统参数介绍名称类型是否必需描述methodstringYAPI接口名称timestampstringY时间戳,格式为yyyy-mm-ddHH:mm:ss,例如:2008-01-2520:23:30。淘宝API服务端允许客户端请求时间误差为6分钟。formatstringN可选,指定响应格式。默认xml,目前支持格式为xml,jsonapp_keystringYTOP分配给应用的AppKeyvstringYAPI协议版本,可选值:2.0。signstringYAPI输入参数签名结果sign_methodstringY参数的加密方法选择,可选值是:md5,hmac6、签名(重点难点)调用接口(API)时需要对请求参数进行签名验证,TOP服务器也会对该请求参数进行验证是否合法的。根据参数名称将你的所有请求参数按照字母先后顺序排序:key+value....key+value对除签名和图片外的所有请求参数按key做的升序排列,value无需编码。例如:将foo=1,bar=2,baz=3排序为bar=2,baz=3,foo=1参数名和参数值链接后,得到拼装字符串bar2baz3foo1,将secretcode同时拼接到参数字符串头、尾部进行md5加密后,再转化成大写,格式是:byte2hex(md5(secretkey1value1key2value2...secret))。7、发送http请求拼装URL:将所有参数值转换为UTF-8编码,然后拼装,通过浏览器访问该地址,即成功调用一次接口=5029C3055D51555112B60B33000122D5×tamp=2011-07-01+13%3A52%3A03&v=2.0&app_key=test&method=taobao.user.get&partner_id=top-apitools&format=xml&nick=%E5%95%86%E5%AE%B6%E6%B5%8B%E8%AF%95%E5%B8%90%E5%8F%B717&fields=nick,location.state,location.city淘宝开放平台给出的文档很详细,在上一节我们也说了有一些系统级的参数,上面已经列出了详细的系统级的名称和描述,这些是必须输入的参数,本教程使用的是xml格式调取并使用md5加密,签名是重点也是好多开发者的难点之处,往往都是因为签名错误导致调取数据的失败。本次学习严格按照我的步骤走下去你可以直接在正式环境下调取出数据。本节没有太多的内容,你需要准的工作就是准备好md5.asp文件,值得注意的是需要32位的加密。打开你下载的md5.asp查看最后2行,修改成如下即可MD5=LCase(WordToHex(a)&WordToHex(b)&WordToHex(c)&WordToHex(d))'32λ'MD5=LCase(WordToHex(b)&WordToHex(c))'16λ我们使用的是32位的,把16位的注释小即可。今天就到这里,明天就开始进入程序阶段了请各位学员提前做好准备,这里要设置到一些类文件,对类不了解的同学抓紧补习一下,我这里没有时间给你补习什么是类?类怎么写?类怎么用?本教程演示地址:上一节的作业同学们都做好了吧?今天的课程就进入程序阶段了,我会给大家一点一点分析并一点一点的去做。还望各位同学跟上节奏哦!在第二节的时候我让大家准备了一个记事本文件,里面的内容如下app_Key=secretCode=pid=Nick=””fields=iid,title,nick,pic_url,…cid=””keyword=现在我们对照上一节的系统级参数看一下还差什么?API接口名称method=“taobao.taobaoke.items.get”Format格式化我们用的是xmlV当前的api版本为2.0SignAPI输入参数签名结果(重点)sign_method加密方式选择md5方式timestamp当前时间戳要用完整的格式如“2012-09-1009:06:26”相关函数1、通过上面的归类我们知道asp里系统默认时间是%=now()%,但是他的格式不是完整的,所以我们需要一个函数来转换一下!'=================================================='函数名:Format_Time'功能:格式化时间'参数:当前的时间now()'==================================================FunctionFormat_Time(s_Time)Dimy,m,d,h,mi,sFormat_Time=IfIsDate(s_Time)=FalseThenExitFunctiony=cstr(year(s_Time))m=cstr(month(s_Time))Iflen(m)=1Thenm=0&md=cstr(day(s_Time))Iflen(d)=1Thend=0&dh=cstr(hour(s_Time))Iflen(h)=1Thenh=0&hmi=cstr(minute(s_Time))Iflen(mi)=1Thenmi=0&mis=cstr(second(s_Time))Iflen(s)=1Thens=0&s'yyyy-mm-ddhh:mm:ssFormat_Time=y&-&m&-&d&&h&:&mi&:&sEndFunction2、整个获取过程中我们传递给淘宝的数据是utf-8格式的,所以我们对传递的汉字部分(关键字,淘宝用户名)进行编码转换。函数如下'=================================================='函数名:YuZhe_UrlEncode'功能:将指定字符进行指定格式进行编码'参数:iStrCode目标字符'iPageCode指定编码65001-UTF-8或936-GB2312'==================================================FunctionYuZhe_UrlEncode(iStrCode,iPageCode)DimStrUrlEncodeStrUrlEncode='初始化变量IfiPageCodeSetPageCodeThen'如果指定要编码的类型与当前页面编码不一至,则临时设置处理该函数时的页面编码类型Session.CodePage=iPageCodeStrUrlEncode=Server.UrlEncode(iStr
本文标题:轻轻松松使用asp做api淘宝客
链接地址:https://www.777doc.com/doc-3237776 .html