Taobao.items.search

http://open.taobao.com/dev/index.php/API2.0:Taobao.items.search

TucueClientUtil.cs 文件:

using System;
using System.Collections.Generic;

using System.Text;
using System.Configuration;
using System.IO;
using System.Text.RegularExpressions;
using Tucue.Top.Api.Util;
using System.Diagnostics;
using System.Net;

namespace Tucue.Top.Api
{
    public class TucueClientUtil
    {
        public static ITucueClient GetSandboxTopClient()
        {
            GetAppkeyScret();
            return new TucueRestClient("http://gw.api.taobao.com/router/rest?", appKey, appSecret);
        }

        public static ITucueClient GetProductTopClient()
        {
            GetAppkeyScret();
            return new TucueRestClient("http://gw.api.taobao.com/router/rest?", appKey, appSecret,"xml");
        }

        private static void GetAppkeyScret()
        {
            try
            {
                appKey = ConfigurationManager.AppSettings["appKey"].ToString();
                appSecret = ConfigurationManager.AppSettings["appSecret"].ToString();
            }
            catch (Exception e)
            {
                Trace.WriteLine(e.Message.ToString());
            }
        }

        /// <summary>
        /// 获取测试环境下的用户会话授权码。
        /// </summary>
        /// <param name="nick">用户昵称</param>
        /// <returns>用户会话授权码</returns>
        public static string GetSandboxSessionKey(string nick)
        {
            IDictionary<string, string> authCodeParams = new Dictionary<string, string>();
            authCodeParams.Add("appkey", "sns");
            authCodeParams.Add("nick", nick);

            string authCodeRsp = WebUtils.DoPost(TOP_AUTHORIZE_URL, authCodeParams);
            string authCodePattern = "<input type=\"text\" id=\"autoInput\" value=\"(.+?)\" style=\".+?\">";
            Match authCodeResult = Regex.Match(authCodeRsp, authCodePattern);
            string authCode = authCodeResult.Groups[1].Value;

            IDictionary<string, string> sessionParams = new Dictionary<string, string>();
            sessionParams.Add("authcode", Uri.UnescapeDataString(authCode));
            string sessionRsp = WebUtils.DoGet(TOP_CONTAINER_URL, sessionParams);

            string sessionPattern = "&top_session=(\\w+?)&";
            Match sessionResult = Regex.Match(sessionRsp, sessionPattern);
            string sessionKey = sessionResult.Groups[1].Value;

            return sessionKey;
        }

        private static string appKey = "12008052";
        private static string appSecret = "5de0727f2d66808ebe481c2b31705e02";
        private const string TOP_AUTHORIZE_URL = "http://open.taobao.com/isv/authorize.php";
        private const string TOP_CONTAINER_URL = "http://container.sandbox.taobao.com/container";
    }
}

猜你喜欢

转载自shupili141005.iteye.com/blog/684449