Cdiscount平台对接总结(辛酸史)

       这段时间做了Cdiscount平台的对接,当前只是做到了抓取账号订单。在此做一个总结,备忘。同时也算是一把辛酸史,供后来人嘲笑。

       1.API说明地址:https://dev.cdiscount.com/marketplace

       2.API对接步骤:
         后台添加API账号、密码  --> 获取Token --> 调用对应接口-->处理接口返回数据。

        关于对接时的详细步骤和涉及到的接口等详细信息,API说明中已经包含,不做累述。这里主要说一下这次对接时我踩过的一些坑。

       1.Cdiscount账号申请后后台会同时自动创建一个对应的api账号。比如后台登陆账号是:liu1314,那对应会有一个liu1314-api的api账号,当我们要对接API时,只需要先在后台设置该api账号的密码,然后就可以通过api账号和密码去获取token。获取到token后才能使用token调用接口方法。

         这里要吐槽的是,密码一定要绝对严格按照平台的密码规则要求去设置。注意,我说的是绝对严格按照!一开始我一直获取不到token,改了好几次密码都不行,来来回回开了不少的case。 最终获取成功的时候,只是把密码里的特殊字符改成了规则里提到的@符号...... (不知道是必须这么要求的还是那边在后台做了什么处理,总之来来回回半个月总算才获取到了token.) 

       token的有效期是48小时。

       2.本以为获取到token以后,接下来就一路通畅了,事实证明我还是太年轻了。         

         再次提醒,调用接口方法时,入参请严格参考API说明中的实例。如果想多尝试,也请先严格使用API说明中的参数,然后再做减法。

         抓取订单调的GetOrderList方法。通常抓取订单时,会分别用创建时间区间和修改时间区间各抓取一次。

         我开始入参只使用了时间参数,但是每次返回的都是所有的订单,而不是传入的时间区间内的数据。尝试了多次依旧不行!挠头,继续开case.....  等来平台的回复是,他们那边调用没有问题,然后附上request和response的文件了事.....

         摸不着头脑。某一瞬间,回想到获取token时的遭遇,于是传入参数完全按照case里的request,结果果然获取到了期望的时间段内的订单数据。-_-    所以原因是什么呢?API不会告诉你,case回复也不会告诉你!经过不断的尝试,最终我得出的结论是,传入参数必须包含具体的订单状态,时间参数才会起作用!!我???

         然而,坑到这里还没完。当我用创建时间区间抓取订单的时候,发现漏单了。作为抓单的程序,漏单这种事情是绝不能存在的!可核实后发现,漏掉的单创建时间都是在该时间区间里面,那为什么会抓不到呢?这完全不科学啊!凡事总有原因,尤其“搬砖”这件事情。于是继续各种姿势不停尝试......

         最后终于终于找到了正确的路,原来传创建时间区间的时候,必须得同时传入修改时间区间的参数!!我?????

         同理可得,按订单修改时间区间抓取订单的时候,创建时间区间也必须要赋值,只是,传个无关紧要的创建时间区间即可。

         目前为止,自己也已经对接过好几个国外的电商平台,但Cdiscount这次依旧实实在在的给我上了一课!

         祝各位后来者同行好运........

 

    附获取token的代码(C#):    
        private string UpdateToken()
        {

            string url = ConfigurationManager.AppSettings["GetTokenUrl"];
            HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
            request.ContentType = "application/json";
            request.Method = "GET";
            string base64Credentials = GetEncodedCredentials();
            request.Headers.Add("Authorization", "Basic " + base64Credentials);
            HttpWebResponse response = request.GetResponse() as HttpWebResponse;
            string result = string.Empty;
            using (StreamReader reader = new StreamReader(response.GetResponseStream()))
            {
                result = reader.ReadToEnd();
            }

            if (!string.IsNullOrEmpty(result))
            {

                XmlDocument xmlDoc = new XmlDocument();
                xmlDoc.LoadXml(result);
                result = xmlDoc.InnerText;
            }
            else
            {
                Console.WriteLine("Token获取异常。未获取到返回值。");
                throw new Exception("Token获取异常。未获取到返回值。");
            }

       }
        private string GetEncodedCredentials()
        {
            string m_Username = ConfigurationManager.AppSettings["cUserName"];
            string m_Password = ConfigurationManager.AppSettings["cPassword"];
            string mergedCredentials = string.Format("{0}:{1}", m_Username, m_Password);
            byte[] byteCredentials = UTF8Encoding.UTF8.GetBytes(mergedCredentials);
            return Convert.ToBase64String(byteCredentials);
        }

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 17
    评论
有用的功能,使您在Aliexpress的“托运”活动中生活更加轻松! Asify添加了新的有用功能,以帮助您使用Aliexpress进行托运活动! 完全免费和无限使用! 无需注册,没有试用期,您只需安装即能享受它! ★产品销售统计信息访问所有产品信息:每日销售,热门国家销售,热门国家Dropshipp,英国市场价格,美国,欧洲和世界★通过特定条件进行产品搜索通过以下价格轻松找到您的产品:价格,订单,等级,销售额/ J ,关键字,有无视频,发货国家,处理时间,交货类型...★产品销售活动查看15至30天〜内任何类别(或所有类别)的销售进度以及TOP产品★CA仿真器插入销售价格并自动计算您的盈利能力(购买成本,应付费用,Shopify / Paypal / Stripe交易费...)★卖家搜索2次单击即可在产品类别中找到可靠的供应商★咨询历史记录咨询并返回★最近查看的最近200种产品中的任何时间★产品跟踪跟踪从J-1到J-7的产品的日常销售,每天自动刷新★跟踪和导出订单实时跟踪自动列出它们,并在Pa后面进行跟踪 只需单击一下rcelApp即可将其导出并随时存档,以供存档★在其他卖家处进行产品搜索寻找同一产品的其他供应商,比较价格,仅几秒钟内就包含运费,而无需咨询该产品★在竞争中进行产品搜索图像中进行搜索,在Shopify,Amazon,Ebay,Cdiscount上找到您的竞争对手...★下载图像只需单击一下即可在zip存档中下载该产品的所有图像:演示,变体和说明★以后还会有其他版本此扩展程序使用会员和Google分析 支持语言:English,Français
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值