Example #1
0
 public async Task GetProductInfo(User currentUser = null, string url = null)
 {
   var producUrl = url ?? Url;
   var client = Utilities.HttpClient("http://store.nike.com", new CookieContainer());
   var response = await client.SendAsync(RequestMessageBuilder.BuildProductInfoRequest(producUrl));
   response.EnsureSuccessStatusCode();
   FillProductInfo(await response.Content.ReadAsStringAsync());
 }
Example #2
0
 public static RestRequest Login(User user)
 {
   var request = new RestRequest(Consts.LoginUrl, Method.POST);
   request.Parameters.Clear();
   request.AddParameter("login", user.Username);
   request.AddParameter("password", user.Password);
   request.AddParameter("rememberMe", "false");
   AddBaseHeaders(request);
   return request;
 }
Example #3
0
    public SeleniumSteps Login(User user)
    {
      _driver.Navigate();
      _driver.ExecuteJavaScript<string>("$('.login-text').click()");
      var emailInput = _driver.FindElement(By.Id("exp-login-email_modal"));

      emailInput.SendKeys(user.Username);

      var pwdInput = _driver.FindElement(By.Id("exp-login-password_modal"));
      pwdInput.Clear();
      pwdInput.SendKeys(user.Password);
      var submit = _driver.FindElement(By.ClassName("exp-login-submit"));
      submit.Click();
      return this;
    }
 public static HttpRequestMessage BuildAddProductRequest(User user, Product product)
 {
   var request = new HttpRequestMessage(HttpMethod.Get, "ap/services/jcartService?callback=nike_Cart_handleJCartResponse&action=addItem&lang_locale=zh_CN&country=CN&catalogId=4&productId=10873886&price=1599&siteId=null&line1=Kobe+XI+Elite+Low+BHM&line2=%E7%94%B7%E5%AD%90%E7%AF%AE%E7%90%83%E9%9E%8B&passcode=null&sizeType=null&skuAndSize=15848073%3A42.5&qty=1&rt=json&view=3&skuId=15848073&displaySize=42.5&_=1453400314000");
   request.Headers.Add("Accept", "*/*");
   request.Headers.Add("Accept-Encoding", "gzip, deflate, sdch");
   request.Headers.Add("Accept-Language", "zh-CN,zh;q=0.8,en-US;q=0.6,en;q=0.4,zh-TW;q=0.2");
   request.Headers.Add("Cache-Control", "no-cache");
   request.Headers.Add("Connection", "keep-alive");
   request.Headers.Add("Host", "secure-store.nike.com");
   request.Headers.Add("Pragma", "no-cache");
   request.Headers.Referrer = new Uri("http://store.nike.com/cn/zh_cn/pd/kobe-11-elite-low-bhm-%E7%AF%AE%E7%90%83%E9%9E%8B/pid-10873886/pgid-11181193");
   request.Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36");
   return request;
 }
 private static string BuildPrData(User user)
 {
   var isLogin = user.IsLogined ? 1 : 0;
   var displayName = user.DisplayName ?? string.Empty;
   isLogin += 0; // isSwoosh 不知道是干什么的, 一直是否。 代码里: true:2 , false: 0
   var exp = string.Empty; // 貌似是过期时间:this.exp && this.exp instanceof Date ? this.exp.toJSON() : "";
   var avatarUrl = user.AvatarUrl ?? string.Empty;
   var profileId = user.Id ?? string.Empty;
   var screenName = user.ScreenName ?? string.Empty;
   return Utilities.JsBase64Encode($"{isLogin}$${displayName}$${avatarUrl}$${exp}$${profileId}$${screenName}$$");
 }
 public static HttpRequestMessage BuildCartInfoRequest(User user)
 {
   user.Cookies.Add(new Cookie("pr_data", BuildPrData(user)) { Domain = ".nike.com" });
   user.Cookies.Add(new Cookie("pr_id", "14153657021") { Domain = ".nike.com" });
   var unixTime = Utilities.UnixTimeStamp();
   var request = new HttpRequestMessage(HttpMethod.Get, $"ap/services/jcartService?callback=jQuery172024396281223744154_{unixTime}&action=getCartSummary&rt=json&country=CN&lang_locale=zh_CN&_={unixTime}");
   request.Headers.Add("Accept", "*/*");
   request.Headers.Add("Accept-Encoding", "gzip, deflate, sdch");
   request.Headers.Add("Accept-Language", "en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4");
   request.Headers.Add("Cache-Control", "no-cache");
   request.Headers.Add("Connection", "keep-alive");
   request.Headers.Add("Host", "secure-store.nike.com");
   request.Headers.Add("Pragma", "no-cache");
   request.Headers.Referrer = new Uri("http://store.nike.com/cn/zh_cn/pd/kobe-11-elite-low-bhm-%E7%AF%AE%E7%90%83%E9%9E%8B/pid-10873886/pgid-11181193");
   request.Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36");
   return request;
 }