Files
KJD_WebService/TEMUKJD/BLL/HttpResponseBLL.cs
T

849 lines
45 KiB
C#

using AllBase;
using AllBase.Model.Result;
using NaiBa.Util.Extension;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using TemuKJD.Helper;
namespace TemuKJD.BLL
{
public class HttpResponseBLL
{
public static string PostResponse(ShopLoginInfo shop, string _url, string _data, string referer)
{
HttpWebResponse response = null;
string result;
try
{
string url = _url;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.KeepAlive = true;
request.Headers.Set(HttpRequestHeader.CacheControl, "max-age=0");
request.Headers.Add("Anti-Content", @"0aqAfqFyXcGvBgd9Q0HiJJ7kvWcKK7muUHnJ6oMAdmem0tmm_enmX1DBr-nJNxmoki33dqHTkZU18BU2p8P72Cg2uEZ_acOOBCxGmIs-Gym4EtKpTdZ6kWRCSClS9L6maLm0imx0GIjodHtLnwpx4ayHnhzNnCXEFecZSC8lBRHb9WCAoyY79kMLIWxBMZZSZrR2_LYUJ5UXzf-82ob455f7OvJa6s895N4wiMGR4vbVH8gFN2VuCxS27RpXDa2WCQQQd6XsJPw7amSUaob6oZ2MXuYb9K3ZqoCX5-nJimNZDR0rNCLB13sYgWq9jy0Q3gjnsFY2dJQDh3ewXS2vvf2DN9IAEzInwWTY31Fn0B6-s8DqwIm61OlXsfYt1AYOOyNMLzkw5llaDaqK21f7vspAuXwnJdAdKXJXSyyEimvTyF_AYLp1gkNqBqN1_ik_jc6cKTDJtGUgFjRojR4g4zM7Ww3wfW63WQrJftYhiTIJiS1tZcsceZht3Zu3MsvyxpAbx4bxFrvL0A6OFx752XsVi04Tm6HDhgt7MmpsrTO5WD_KjgjxNX8VNoGndD0OmriAYVn6kwmZXE6Y_khGedxumIGy4sOQI36__CeiuiPIvB8itfOqd7eyqyeCIaEODrh9dSLBQz8AxQ2xt60OTn4HSiPmlwo1J0TFtjUw2DUZB68tdrINb7ugulMsaIwMKr8S0bilSKW6JuYw3oAsmK3daQfJWy3mzVowY1UwPQfTB4Ibz6uRQxHkvhsRTXkrAygGeZIc9S");
request.Headers.Add("sec-ch-ua-platform", @"""Windows""");
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36";
request.Headers.Add("mallid", shop.ShopId);
//request.Headers.Add("sec-ch-ua", @"""Google Chrome"";v=""137"", ""Chromium"";v=""137"", ""Not/A)Brand"";v=""24""");
request.Headers.Add("sec-ch-ua", @"""Not)A;Brand"";v=""8"", ""Chromium"";v=""138""");
request.ContentType = "application/json";
request.Headers.Add("sec-ch-ua-mobile", @"?0");
request.Accept = "*/*";
request.Headers.Add("Origin", @"https://seller.kuajingmaihuo.com");
request.Headers.Add("Sec-Fetch-Site", @"same-origin");
request.Headers.Add("Sec-Fetch-Mode", @"cors");
request.Headers.Add("Sec-Fetch-Dest", @"empty");
request.Referer = referer;
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br, zstd");
request.Headers.Set(HttpRequestHeader.AcceptLanguage, "zh-CN,zh;q=0.9");
request.Headers.Set(HttpRequestHeader.Cookie, shop.Cookies);
request.Method = "POST";
request.ServicePoint.Expect100Continue = false;
string body = _data;
byte[] postBytes = System.Text.Encoding.UTF8.GetBytes(body);
request.ContentLength = postBytes.Length;
Stream stream = request.GetRequestStream();
stream.Write(postBytes, 0, postBytes.Length);
stream.Close();
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
if (ex.Status == WebExceptionStatus.ProtocolError)
{
response = (HttpWebResponse)ex.Response;
result = GetProxyHtml.ReadResponse(response);
return result;
}
else return ex.Message;
}
catch (Exception e)
{
if (response != null) response.Close();
return e.Message;
}
result = GetProxyHtml.ReadResponse(response);
return result;
}
/// <summary>
/// 国际版调用接口
/// </summary>
/// <param name="shop"></param>
/// <param name="_url"></param>
/// <param name="_data"></param>
/// <param name="referer"></param>
/// <returns></returns>
public static string PostResponse2(ShopLoginInfo shop, string _url, string _data, string referer)
{
var cookiesArr = shop.Cookies2.Split(';').Select(s => s.Trim());
string cookies = "";
foreach(var cook in cookiesArr)
{
if (cook.StartsWith("mallid"))
cookies += "mallid=" + shop.ShopId + "; ";
else
cookies += cook + "; ";
}
cookies = cookies.Trim().TrimEnd(';');
HttpWebResponse response = null;
string result;
try
{
string url = _url;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.KeepAlive = true;
request.Headers.Set(HttpRequestHeader.CacheControl, "max-age=0");
request.Headers.Add("Anti-Content", @"0aqWfxid0jQ8y99ATT_XGgVxsfy4jtTaQmZlRu9wW2g__9Zt4t2lsnyOevFqnSSUyXZMpPqVZUDOdlErZ7OEmhxNBhLjtyetvpWiGLBc30pcnYGHrW-JahQSJXHSVaz3_sGqB4FzfTWB9eAO-4-p957LPKscrKS9qQPTVDizDQXbx3zEPk64Cn3aUxjMeU5ovt737YczpQRmqtpc7Riil2boSIvCGPfPppc9UscZP5f4SVEsH2sgGTTc4shYwJJ3R-p-dr3nnmhksQlh20daGKfN-yWRSt_VoXlVtkh6KfXOngZhGQwnS45_G9hBY_bXH2zy4ym32OSSWmk0Z2NYg4nW7l30uIUw9mXV2mwYmN9mE1ngv3WMWCAtf5LupF71ciYOdouvE3uTYzqQMjT1i_4nRszBLSRRQbi7wMPIsxJOwR6OUiYv7DfcoerokcZMsplG-PORulS0avRh-BlkZCUGIir2GAmFjtAAt1rYH2evGrbSQo_7vRxiIHi9778FABRQwR8v");
request.Headers.Add("sec-ch-ua-platform", @"""Windows""");
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36";
request.Headers.Add("mallid", shop.ShopId);
//request.Headers.Add("sec-ch-ua", @"""Google Chrome"";v=""137"", ""Chromium"";v=""137"", ""Not/A)Brand"";v=""24""");
//request.Headers.Add("sec-ch-ua", @"""Not;A=Brand"";v=""99"", ""Google Chrome"";v=""139"", ""Chromium"";v=""139""");
request.Headers.Add("sec-ch-ua", @"""Not)A;Brand"";v=""8"", ""Chromium"";v=""138""");
request.ContentType = "application/json";
request.Headers.Add("sec-ch-ua-mobile", @"?0");
request.Accept = "*/*";
request.Headers.Add("Origin", @"https://agentseller.temu.com");
request.Headers.Add("Sec-Fetch-Site", @"same-origin");
request.Headers.Add("Sec-Fetch-Mode", @"cors");
request.Headers.Add("Sec-Fetch-Dest", @"empty");
request.Referer = referer;
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br, zstd");
request.Headers.Set(HttpRequestHeader.AcceptLanguage, "zh-CN,zh;q=0.9");
request.Headers.Set(HttpRequestHeader.Cookie, cookies);
request.Method = "POST";
request.ServicePoint.Expect100Continue = false;
string body = _data;
byte[] postBytes = System.Text.Encoding.UTF8.GetBytes(body);
request.ContentLength = postBytes.Length;
Stream stream = request.GetRequestStream();
stream.Write(postBytes, 0, postBytes.Length);
stream.Close();
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
if (ex.Status == WebExceptionStatus.ProtocolError)
{
response = (HttpWebResponse)ex.Response;
result = GetProxyHtml.ReadResponse(response);
return result;
}
else return ex.Message;
}
catch (Exception e)
{
if (response != null) response.Close();
return e.Message;
}
result = GetProxyHtml.ReadResponse(response);
return result;
}
/// <summary>
/// 上传图片接口
/// </summary>
/// <param name="shop"></param>
/// <param name="_url"></param>
/// <param name="_data"></param>
/// <param name="referer"></param>
/// <returns></returns>
public static string PostResponseUpload(ShopLoginInfo shop, string _url, string _data, string referer, string boundary)
{
var cookiesArr = shop.Cookies2.Split(';').Select(s => s.Trim());
string cookies = "";
foreach (var cook in cookiesArr)
{
if (cook.StartsWith("mallid"))
cookies += "mallid=" + shop.ShopId + "; ";
else
cookies += cook + "; ";
}
cookies = cookies.Trim().TrimEnd(';');
HttpWebResponse response = null;
string result;
try
{
string url = _url;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.KeepAlive = true;
request.Headers.Add("sec-ch-ua-platform", @"""Windows""");
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36";
//request.Headers.Add("mallid", shop.ShopId);
//request.Headers.Add("sec-ch-ua", @"""Not)A;Brand"";v=""8"", ""Chromium"";v=""138"", ""Google Chrome"";v=""138""");
request.Headers.Add("sec-ch-ua", @"""Not)A;Brand"";v=""8"", ""Chromium"";v=""138""");
request.ContentType = "multipart/form-data; boundary=" + boundary;
request.Headers.Add("sec-ch-ua-mobile", @"?0");
request.Accept = "*/*";
request.Headers.Add("Origin", @"https://agentseller.temu.com");
request.Headers.Add("Sec-Fetch-Site", @"same-origin");
request.Headers.Add("Sec-Fetch-Mode", @"cors");
request.Headers.Add("Sec-Fetch-Dest", @"empty");
request.Referer = referer;
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br, zstd");
request.Headers.Set(HttpRequestHeader.AcceptLanguage, "zh-CN,zh;q=0.9");
request.Headers.Set(HttpRequestHeader.Cookie, cookies);
request.Method = "POST";
request.ServicePoint.Expect100Continue = false;
string body = _data;
WriteMultipartBodyToRequest(request, body);
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
if (ex.Status == WebExceptionStatus.ProtocolError)
{
response = (HttpWebResponse)ex.Response;
result = GetProxyHtml.ReadResponse(response);
return result;
}
else return ex.Message;
}
catch (Exception e)
{
if (response != null) response.Close();
return e.Message;
}
result = GetProxyHtml.ReadResponse(response);
return result;
}
private static void WriteMultipartBodyToRequest(HttpWebRequest request, string body)
{
string[] multiparts = Regex.Split(body, @"<!>");
byte[] bytes;
using (MemoryStream ms = new MemoryStream())
{
foreach (string part in multiparts)
{
if (File.Exists(part))
{
bytes = File.ReadAllBytes(part);
}
else
{
bytes = System.Text.Encoding.UTF8.GetBytes(part.Replace("\r\n", "\n").Replace("\r", "\n").Replace("\n", "\r\n"));
}
ms.Write(bytes, 0, bytes.Length);
}
request.ContentLength = ms.Length;
using (Stream stream = request.GetRequestStream())
{
ms.WriteTo(stream);
}
}
}
public static string GetResponse(ShopLoginInfo shop, string _url, string referer="")
{
HttpWebResponse response = null;
string result;
try
{
string url = _url;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.KeepAlive = true;
//request.Headers.Set(HttpRequestHeader.CacheControl, "max-age=0");
//request.Headers.Add("Anti-Content", @"0aqAfqFyXcGvBgd9Q0HiJJ7kvWcKK7muUHnJ6oMAdmem0tmm_enmX1DBr-nJNxmoki33dqHTkZU18BU2p8P72Cg2uEZ_acOOBCxGmIs-Gym4EtKpTdZ6kWRCSClS9L6maLm0imx0GIjodHtLnwpx4ayHnhzNnCXEFecZSC8lBRHb9WCAoyY79kMLIWxBMZZSZrR2_LYUJ5UXzf-82ob455f7OvJa6s895N4wiMGR4vbVH8gFN2VuCxS27RpXDa2WCQQQd6XsJPw7amSUaob6oZ2MXuYb9K3ZqoCX5-nJimNZDR0rNCLB13sYgWq9jy0Q3gjnsFY2dJQDh3ewXS2vvf2DN9IAEzInwWTY31Fn0B6-s8DqwIm61OlXsfYt1AYOOyNMLzkw5llaDaqK21f7vspAuXwnJdAdKXJXSyyEimvTyF_AYLp1gkNqBqN1_ik_jc6cKTDJtGUgFjRojR4g4zM7Ww3wfW63WQrJftYhiTIJiS1tZcsceZht3Zu3MsvyxpAbx4bxFrvL0A6OFx752XsVi04Tm6HDhgt7MmpsrTO5WD_KjgjxNX8VNoGndD0OmriAYVn6kwmZXE6Y_khGedxumIGy4sOQI36__CeiuiPIvB8itfOqd7eyqyeCIaEODrh9dSLBQz8AxQ2xt60OTn4HSiPmlwo1J0TFtjUw2DUZB68tdrINb7ugulMsaIwMKr8S0bilSKW6JuYw3oAsmK3daQfJWy3mzVowY1UwPQfTB4Ibz6uRQxHkvhsRTXkrAygGeZIc9S");
//request.Headers.Add("sec-ch-ua", @"""Google Chrome"";v=""137"", ""Chromium"";v=""137"", ""Not/A)Brand"";v=""24""");
request.Headers.Add("sec-ch-ua", @"""Not)A;Brand"";v=""8"", ""Chromium"";v=""138""");
request.Headers.Add("sec-ch-ua-mobile", @"?0");
request.Headers.Add("sec-ch-ua-platform", @"""Windows""");
request.Headers.Add("Upgrade-Insecure-Requests", @"1");
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36";
request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7";
request.Headers.Add("Sec-Fetch-Site", @"same-origin");
request.Headers.Add("Sec-Fetch-Mode", @"navigate");
request.Headers.Add("Sec-Fetch-User", @"?1");
request.Headers.Add("Sec-Fetch-Dest", @"document");
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br, zstd");
request.Headers.Set(HttpRequestHeader.AcceptLanguage, "zh-CN,zh;q=0.9");
request.Headers.Set(HttpRequestHeader.Cookie, shop.Cookies);
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
if (ex.Status == WebExceptionStatus.ProtocolError)
{
response = (HttpWebResponse)ex.Response;
result = GetProxyHtml.ReadResponse(response);
return result;
}
else return ex.Message;
}
catch (Exception e)
{
if (response != null) response.Close();
return e.Message;
}
result = GetProxyHtml.ReadResponse(response);
return result;
}
public static string PostResponseAds(ShopLoginInfo shop, string _url, string _data, string referer)
{
string cookies = "";
var cookiesArrAds = shop.ad_cookie.Replace("\\", "").Split(';').Select(s => s.Trim());
foreach (var cook in cookiesArrAds)
{
if (cook.StartsWith("mallid"))
cookies += "mallid=" + shop.ShopId + "; ";
else if (cook.StartsWith("MALL_ID"))
cookies += "MALL_ID=" + shop.ShopId + "; ";
else
cookies += cook + "; ";
}
cookies = cookies.Trim().TrimEnd(';');
if (_url.Contains("https://ads.temu.com/api/v1/coconut/ad/ads_detail"))
{
var cookiesArr = shop.Cookies2.Replace("\\", "").Split(';').Select(s => s.Trim());
foreach (var cook in cookiesArr)
{
if (("; " + cookies).Contains("; " + cook))
continue;
if (cook.StartsWith("mallid"))
cookies += "mallid=" + shop.ShopId + "; ";
else if (cook.StartsWith("MALL_ID"))
cookies += "MALL_ID=" + shop.ShopId + "; ";
else
cookies += cook + "; ";
}
}
HttpWebResponse response = null;
string result;
try
{
string url = _url;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
//request.KeepAlive = true;
request.Headers.Add("sec-ch-ua-platform", @"""Windows""");
request.Headers.Add("x-phan-data", @"0aeJx7xMxiYAgkomMBESQC7A");
request.Headers.Add("sec-ch-ua", @"""Not)A;Brand"";v=""8"", ""Chromium"";v=""138""");
request.Headers.Add("sec-ch-ua-mobile", @"?0");
request.Headers.Add("X-Ad-Request-Id", @"6c0d8ba5-93f2-4083-b56d-8cb9e2362139");
//request.Headers.Add("x-document-referer", @"https://ads.temu.com/index.html?adAreaOverride=2&refer_page_name=login&refer_page_id=22942_1762243593932_o1u0yfk48r&refer_page_sn=22942&_x_sessn_id=rzrz06wgzk&is_back=1");
request.Headers.Add("x-document-referer", shop.ad_url);
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36";
request.Accept = "application/json, text/plain, */*";
request.ContentType = "application/json;charset=UTF-8";
request.Headers.Add("Origin", @"https://ads.temu.com");
request.Headers.Set(HttpRequestHeader.Cookie, cookies);
///region=0;
///ad_timezone=Asia%2FShanghai;
///img_sup=avif%2Cwebp;
///auth_token=eyJjdHkiOiJKV1QiLCJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiZGlyIn0..doZoU-mjwDJ1VRHT.C3eSZAHigXzfDqOwrkxjdUC6YWDjo16HhkgkJ63LqJZFGtiY2M7YlBFA5d_AH1oVUQXOXUhmoLYSENuPCbwjIidnIMfzAI0AQXH93s6YjptbhgDu8b3VFxWa6MJ7k0ueONwvbNml8m3q9QUR3E8apnoSzGR7i7HPqwm4IqdATOhvEWKAI2iemEsyCPjUvWt8bwCd2kJtCxeQxcvfsIxrEqxnp2IcitlL5dr3sSKL-zkQTsDHUOKSHZDs2o2e3LTNriVKQPxEUnUeM0bMWeS0LK5K5DLv2KtK15eRij8IzKiOo6LcUIU8H2JCVsWij7h9zaEKysbeJ2m4lvGPUHaQjiFGVBkLjERGpdeBrsL25SdNXa-ewYV3G3hZhYIkqwLraq_6FeFXEly1beNArRqvLtKk8F8XuJcV73I84dpqtPoNf0qNQ4xHWAxu9W221Np8cyzoFYirmUnSiVcXUIX4Frw1PCQNQlGLk9YiDu4yGg1c.GadaUU1hhCNgybc3hhq5HA;
///ad_uin=pRKR5htgF5Llfwm8g8ItiQ;
///ad_site="";
///MALL_ID=634418217169109;
///ad_area=2;
///ad_language=zh-Hans;
///mall_ad_timezone=Asia%2FShanghai;
///ad_currency=CNY
// request.Headers.Set(HttpRequestHeader.Cookie, @"
//api_uid=CtxlFWkmf8WybOWFCAnAAg==;
//_nano_fp=Xpmjn0gqX0myn0TJlT_YvYLohdDCmG9aYkjPjQBU;
//_bee=a2ZiO8rno4RSC5pTp0Xvb3xZ7WNVrapJ;
//njrpl=a2ZiO8rno4RSC5pTp0Xvb3xZ7WNVrapJ;
//dilx=1e46HQzMd-trn9bElW4ly;
//hfsc=L3yPcIsw7Trw05LIeA==;
//seller_temp=N_eyJ0Ijoic2hjYUcrZ1VkVkYweEVIYVIvRHFzOVlkMDViUzdxK2xUam5IY3BUMzU2bkZscFN5Q1dUT3VxQzFaUHJEZTFKNiIsInYiOjEsInMiOjEwMDAxLCJ1IjoyNDg3NDUxOTIxNzE0fQ==;
//mallid=634418217169109;
//region=0;
//ad_timezone=Asia%2FShanghai;
//img_sup=avif%2Cwebp;
//auth_token=eyJjdHkiOiJKV1QiLCJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiZGlyIn0..doZoU-mjwDJ1VRHT.C3eSZAHigXzfDqOwrkxjdUC6YWDjo16HhkgkJ63LqJZFGtiY2M7YlBFA5d_AH1oVUQXOXUhmoLYSENuPCbwjIidnIMfzAI0AQXH93s6YjptbhgDu8b3VFxWa6MJ7k0ueONwvbNml8m3q9QUR3E8apnoSzGR7i7HPqwm4IqdATOhvEWKAI2iemEsyCPjUvWt8bwCd2kJtCxeQxcvfsIxrEqxnp2IcitlL5dr3sSKL-zkQTsDHUOKSHZDs2o2e3LTNriVKQPxEUnUeM0bMWeS0LK5K5DLv2KtK15eRij8IzKiOo6LcUIU8H2JCVsWij7h9zaEKysbeJ2m4lvGPUHaQjiFGVBkLjERGpdeBrsL25SdNXa-ewYV3G3hZhYIkqwLraq_6FeFXEly1beNArRqvLtKk8F8XuJcV73I84dpqtPoNf0qNQ4xHWAxu9W221Np8cyzoFYirmUnSiVcXUIX4Frw1PCQNQlGLk9YiDu4yGg1c.GadaUU1hhCNgybc3hhq5HA;
//ad_uin=pRKR5htgF5Llfwm8g8ItiQ;
//ad_site="""";
//MALL_ID=634418217169109;
//ad_area=2;
//ad_language=zh-Hans;
//mall_ad_timezone=Asia%2FShanghai;
//ad_currency=CNY;
//region=0;
//ad_timezone=Asia%2FShanghai;
//img_sup=avif%2Cwebp");
request.Headers.Add("Sec-Fetch-Site", @"same-origin");
request.Headers.Add("Sec-Fetch-Mode", @"cors");
request.Headers.Add("Sec-Fetch-Dest", @"empty");
request.Referer = referer;
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br, zstd");
request.Headers.Set(HttpRequestHeader.AcceptLanguage, "zh-CN,zh;q=0.9");
request.Method = "POST";
request.ServicePoint.Expect100Continue = false;
string body = _data;
byte[] postBytes = System.Text.Encoding.UTF8.GetBytes(body);
request.ContentLength = postBytes.Length;
Stream stream = request.GetRequestStream();
stream.Write(postBytes, 0, postBytes.Length);
stream.Close();
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
if (ex.Status == WebExceptionStatus.ProtocolError)
{
response = (HttpWebResponse)ex.Response;
result = GetProxyHtml.ReadResponse(response);
return result;
}
else return ex.Message;
}
catch (Exception e)
{
if (response != null) response.Close();
return e.Message;
}
result = GetProxyHtml.ReadResponse(response);
return result;
}
public static string PDDPostResponse(ShopLoginInfo shop, string _url, string _data, string referer, string AntiContent = null)
{
if (string.IsNullOrEmpty(AntiContent))
AntiContent = "0apAfa5e-wCEXaTg0FNtNj4PklUKt0E_FNynruEIx9qGLdY6b5YUhnqi7QxYqQqi2Ugraphm85CrR0oU0XYn0dYX5dqXqXJnqg8npDTnpTJnpAaX9swaKE20Tbw_yKnoaXIXxHGB_IxWWlIXMnxghvniTodnXt2wcA7sxhbV_CEBcCez4H92maXI2d1qgoYswoG4Mf_ojlph0nGig8nqWzXqwTYh0j4W6jYs6PxHjXvJslpHyXjseoqZhfqdydn5_Jj0g2TPpCaGDgSgL1FT_lZPGmxIq9UXkPCQpBhPtTZaqGAq06gXkNxXZPrXO0gQ4SHl0bZSZth9LG_j0dKS54JX1PCPZM4XObhaxYjH0oMqm06oiXHYmpnOkTbo-z4QlrCxT43eEBgmrk8AvVbKI3FKz-FAL4pwdFveGf5c1JO_csO50lnqQNy9909u6zLUrFMiTy";
string rckk = "Z07QGtUzw1cgd58IPWnC1OAGCW9xcH1m";
string cookies = "";
try
{
var cookieLst = JsonHelper.DeserializeJsonToList<CefSharp.Cookie>(shop.Cookies);
foreach (var cook in cookieLst)
{
cookies += cook.Name + "=" + cook.Value + ";";
}
var rckkCookie = cookieLst.FirstOrDefault(c => c.Name == "rckk");
if (rckkCookie != null)
rckk = rckkCookie.Value;
}
catch { }
HttpWebResponse response = null;
string result;
try
{
string url = _url;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
if (cookies.Contains("PASS_ID=windows_1") /*&& !string.IsNullOrEmpty(shop.pddid)*/)
{
//request.Headers.Add("pddid", @"zULm8bXS");
if (!url.Contains("https://mms.pinduoduo.com/draco-ms/mms/template/property/sub-property/v4"))
request.KeepAlive = true;
request.Headers.Set(HttpRequestHeader.CacheControl, "max-age=0");
request.Accept = "*/*";
request.Headers.Add("Anti-Content", AntiContent);
request.Headers.Set(HttpRequestHeader.Cookie, cookies);
request.Headers.Add("ETag", rckk);
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.5.40.8 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12";
request.ContentType = "application/json";
request.Headers.Add("pddid", shop.pddid.ParseToString());
request.Headers.Add("Sec-Fetch-Site", @"same-origin");
request.Headers.Add("Sec-Fetch-Mode", @"cors");
request.Headers.Add("Sec-Fetch-Dest", @"empty");
request.Referer = referer;
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br");
}
else
{
request.KeepAlive = true;
request.Headers.Set(HttpRequestHeader.CacheControl, "max-age=0");
request.Headers.Add("Anti-Content", AntiContent);
request.Headers.Add("sec-ch-ua-platform", @"""Windows""");
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36";
request.Headers.Add("ETag", rckk);
//request.Headers.Add("sec-ch-ua", @"""Not;A=Brand"";v=""99"", ""Google Chrome"";v=""139"", ""Chromium"";v=""139""");
request.Headers.Add("sec-ch-ua", @"""Not)A;Brand"";v=""8"", ""Chromium"";v=""138""");
request.ContentType = "application/json";
request.Headers.Add("sec-ch-ua-mobile", @"?0");
request.Accept = "*/*";
request.Headers.Add("Origin", @"https://mms.pinduoduo.com");
request.Headers.Add("Sec-Fetch-Site", @"same-origin");
request.Headers.Add("Sec-Fetch-Mode", @"cors");
request.Headers.Add("Sec-Fetch-Dest", @"empty");
request.Referer = referer;
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br, zstd");
request.Headers.Set(HttpRequestHeader.AcceptLanguage, "zh-CN,zh;q=0.9");
request.Headers.Set(HttpRequestHeader.Cookie, cookies);
}
request.Method = "POST";
request.ServicePoint.Expect100Continue = false;
string body = _data;
byte[] postBytes = System.Text.Encoding.UTF8.GetBytes(body);
request.ContentLength = postBytes.Length;
Stream stream = request.GetRequestStream();
stream.Write(postBytes, 0, postBytes.Length);
stream.Close();
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
if (ex.Status == WebExceptionStatus.ProtocolError)
{
response = (HttpWebResponse)ex.Response;
result = GetProxyHtml.ReadResponse(response);
return result;
}
else return ex.Message;
}
catch (Exception e)
{
if (response != null) response.Close();
return e.Message;
}
result = GetProxyHtml.ReadResponse(response);
if (result.Contains("会话已过期") /*&& !_url.StartsWith("https://mms.pinduoduo.com/draco-ms/mms/template/property/sub-property/v4")*/)
{
var url = _url;
//https://mms.pinduoduo.com/draco-ms/mms/template/property/sub-property/v4
//https://mms.pinduoduo.com/draco-ms/mms/template/property/sub-property/v4
//https://mms.pinduoduo.com/opportunity-goods/chance-goods/quick_release
//https://mms.pinduoduo.com/cabernet/mms/sizespec/action/post
//https://mms.pinduoduo.com/gorse/mms/goods/decoration/commit/save
}
return result;
}
public static string PDDGetResponse(ShopLoginInfo shop, string _url, string _data, string referer, string AntiContent = null)
{
if (string.IsNullOrEmpty(AntiContent))
AntiContent = "0apAfa5e-wCEXaTg0FNtNj4PklUKt0E_FNynruEIx9qGLdY6b5YUhnqi7QxYqQqi2Ugraphm85CrR0oU0XYn0dYX5dqXqXJnqg8npDTnpTJnpAaX9swaKE20Tbw_yKnoaXIXxHGB_IxWWlIXMnxghvniTodnXt2wcA7sxhbV_CEBcCez4H92maXI2d1qgoYswoG4Mf_ojlph0nGig8nqWzXqwTYh0j4W6jYs6PxHjXvJslpHyXjseoqZhfqdydn5_Jj0g2TPpCaGDgSgL1FT_lZPGmxIq9UXkPCQpBhPtTZaqGAq06gXkNxXZPrXO0gQ4SHl0bZSZth9LG_j0dKS54JX1PCPZM4XObhaxYjH0oMqm06oiXHYmpnOkTbo-z4QlrCxT43eEBgmrk8AvVbKI3FKz-FAL4pwdFveGf5c1JO_csO50lnqQNy9909u6zLUrFMiTy";
string rckk = "Z07QGtUzw1cgd58IPWnC1OAGCW9xcH1m";
string cookies = "";
try
{
var cookieLst = JsonHelper.DeserializeJsonToList<CefSharp.Cookie>(shop.Cookies);
foreach (var cook in cookieLst)
{
cookies += cook.Name + "=" + cook.Value + ";";
}
var rckkCookie = cookieLst.FirstOrDefault(c => c.Name == "rckk");
if (rckkCookie != null)
rckk = rckkCookie.Value;
}
catch { }
HttpWebResponse response = null;
string result;
try
{
string url = _url;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.KeepAlive = true;
if (cookies.Contains("PASS_ID=windows_1") /*&& !string.IsNullOrEmpty(shop.pddid)*/)
{
//request.Headers.Add("pddid", @"zULm8bXS");
if (url.Contains("https://mms.pinduoduo.com/draco-ms/mms/template/mall"))
{
request.Headers.Set(HttpRequestHeader.CacheControl, "max-age=0");
request.Headers.Add("Anti-Content", AntiContent);
request.Headers.Add("ETag", rckk);
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.5.40.8 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12";
request.Accept = "*/*";
request.Headers.Set(HttpRequestHeader.Cookie, cookies);
request.Headers.Add("Sec-Fetch-Site", @"same-origin");
request.Headers.Add("Sec-Fetch-Mode", @"cors");
request.Headers.Add("Sec-Fetch-Dest", @"empty");
request.Referer = referer;
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br");
}
else if (url.Contains("https://mms.pinduoduo.com/goods/goods_add/index?type=add&from=chance"))
{
request.Headers.Add("Upgrade-Insecure-Requests", @"1");
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.5.40.8 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12";
request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9";
request.Headers.Set(HttpRequestHeader.Cookie, cookies);
request.Headers.Add("Sec-Fetch-Site", @"none");
request.Headers.Add("Sec-Fetch-Mode", @"navigate");
request.Headers.Add("Sec-Fetch-User", @"?1");
request.Headers.Add("Sec-Fetch-Dest", @"document");
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br");
}
else
{
request.Headers.Set(HttpRequestHeader.CacheControl, "max-age=0");
request.Headers.Add("Anti-Content", AntiContent);
request.Headers.Add("ETag", rckk);
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.5.40.8 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12";
request.Headers.Add("pddid", shop.pddid.ParseToString());
request.Accept = "*/*";
request.Headers.Set(HttpRequestHeader.Cookie, cookies);
request.Headers.Add("Sec-Fetch-Site", @"same-origin");
request.Headers.Add("Sec-Fetch-Mode", @"cors");
request.Headers.Add("Sec-Fetch-Dest", @"empty");
request.Referer = referer;
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br");
}
}
else
{
request.Headers.Set(HttpRequestHeader.CacheControl, "max-age=0");
request.Headers.Add("Anti-Content", AntiContent);
request.Headers.Add("sec-ch-ua-platform", @"""Windows""");
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36";
request.Headers.Add("ETag", rckk);
//request.Headers.Add("sec-ch-ua", @"""Not;A=Brand"";v=""99"", ""Google Chrome"";v=""139"", ""Chromium"";v=""139""");
request.Headers.Add("sec-ch-ua", @"""Not)A;Brand"";v=""8"", ""Chromium"";v=""138""");
request.Headers.Add("sec-ch-ua-mobile", @"?0");
request.Accept = "*/*";
request.Headers.Add("Sec-Fetch-Site", @"same-origin");
request.Headers.Add("Sec-Fetch-Mode", @"cors");
request.Headers.Add("Sec-Fetch-Dest", @"empty");
request.Referer = referer;
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br, zstd");
request.Headers.Set(HttpRequestHeader.AcceptLanguage, "zh-CN,zh;q=0.9");
request.Headers.Set(HttpRequestHeader.Cookie, cookies);
}
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
if (ex.Status == WebExceptionStatus.ProtocolError)
{
response = (HttpWebResponse)ex.Response;
result = GetProxyHtml.ReadResponse(response);
return result;
}
else return ex.Message;
}
catch (Exception e)
{
if (response != null) response.Close();
return e.Message;
}
result = GetProxyHtml.ReadResponse(response);
return result;
}
public static string PDDPostResponseUpload(ShopLoginInfo shop, string _url, string _data, string referer, string boundary, string AntiContent = null)
{
if (string.IsNullOrEmpty(AntiContent))
AntiContent = "0apAfa5e-wCEXaTg0FNtNj4PklUKt0E_FNynruEIx9qGLdY6b5YUhnqi7QxYqQqi2Ugraphm85CrR0oU0XYn0dYX5dqXqXJnqg8npDTnpTJnpAaX9swaKE20Tbw_yKnoaXIXxHGB_IxWWlIXMnxghvniTodnXt2wcA7sxhbV_CEBcCez4H92maXI2d1qgoYswoG4Mf_ojlph0nGig8nqWzXqwTYh0j4W6jYs6PxHjXvJslpHyXjseoqZhfqdydn5_Jj0g2TPpCaGDgSgL1FT_lZPGmxIq9UXkPCQpBhPtTZaqGAq06gXkNxXZPrXO0gQ4SHl0bZSZth9LG_j0dKS54JX1PCPZM4XObhaxYjH0oMqm06oiXHYmpnOkTbo-z4QlrCxT43eEBgmrk8AvVbKI3FKz-FAL4pwdFveGf5c1JO_csO50lnqQNy9909u6zLUrFMiTy";
string rckk = "Z07QGtUzw1cgd58IPWnC1OAGCW9xcH1m";
string cookies = "";
try
{
var cookieLst = JsonHelper.DeserializeJsonToList<CefSharp.Cookie>(shop.Cookies);
foreach (var cook in cookieLst)
{
cookies += cook.Name + "=" + cook.Value + ";";
}
var rckkCookie = cookieLst.FirstOrDefault(c => c.Name == "rckk");
if (rckkCookie != null)
rckk = rckkCookie.Value;
}
catch { }
HttpWebResponse response = null;
string result;
try
{
string url = _url;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.KeepAlive = true;
request.Headers.Set(HttpRequestHeader.CacheControl, "max-age=0");
if (cookies.Contains("PASS_ID=windows_1")/* && !string.IsNullOrEmpty(shop.pddid)*/)
{
//request.Headers.Add("pddid", @"zULm8bXS");
request.Accept = "*/*";
request.ContentType = "multipart/form-data; boundary=" + boundary;
request.Headers.Set(HttpRequestHeader.Cookie, cookies);
request.Headers.Add("ETag", rckk);
request.Headers.Add("Origin", @"https://mms.pinduoduo.com");
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.5.40.8 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12";
request.Headers.Add("pddid", shop.pddid.ParseToString());
request.Headers.Add("Sec-Fetch-Site", @"same-site");
request.Headers.Add("Sec-Fetch-Mode", @"cors");
request.Headers.Add("Sec-Fetch-Dest", @"empty");
request.Referer = referer;
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br");
}
else
{
request.Headers.Add("sec-ch-ua-platform", @"""Windows""");
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36";
request.Headers.Add("ETag", rckk);
//request.Headers.Add("sec-ch-ua", @"""Not;A=Brand"";v=""99"", ""Google Chrome"";v=""139"", ""Chromium"";v=""139""");
request.Headers.Add("sec-ch-ua", @"""Not)A;Brand"";v=""8"", ""Chromium"";v=""138""");
request.ContentType = "multipart/form-data; boundary=" + boundary;
request.Headers.Add("sec-ch-ua-mobile", @"?0");
request.Accept = "*/*";
request.Headers.Add("Origin", @"https://mms.pinduoduo.com");
request.Headers.Set(HttpRequestHeader.Cookie, cookies);
request.Headers.Add("Sec-Fetch-Site", @"same-site");
request.Headers.Add("Sec-Fetch-Mode", @"cors");
request.Headers.Add("Sec-Fetch-Dest", @"empty");
request.Referer = referer;
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br, zstd");
request.Headers.Set(HttpRequestHeader.AcceptLanguage, "zh-CN,zh;q=0.9");
}
request.Method = "POST";
request.ServicePoint.Expect100Continue = false;
string body = _data;
WriteMultipartBodyToRequest(request, body);
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
if (ex.Status == WebExceptionStatus.ProtocolError)
{
response = (HttpWebResponse)ex.Response;
result = GetProxyHtml.ReadResponse(response);
return result;
}
else return ex.Message;
}
catch (Exception e)
{
if (response != null) response.Close();
return e.Message;
}
result = GetProxyHtml.ReadResponse(response);
return result;
}
/// <summary>
/// 国际版调用接口
/// </summary>
/// <param name="shop"></param>
/// <param name="_url"></param>
/// <param name="_data"></param>
/// <param name="referer"></param>
/// <returns></returns>
public static string BaiduPostResponse(ShopLoginInfo shop, string _url, string _data, string referer)
{
//{\"d0\":\"gbgo3qifjng1j88aiar3\",\"ua\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36\",\"baiduid\":\"A2AACB419326AE9A7EA5C1538865CF5D:FG=1\",\"platform\":\"Win32\",\"d23\":0,\"hfe\":\"\",\"d1\":\"\",\"d2\":0,\"d420\":0,\"clientTs\":1761216113507,\"version\":\"1.4.0.3\",\"extra\":\"\",\"odkp\":0,\"hf\":\"\",\"d78\":6745,\"h0\":false,\"h1\":0}
string data = "{\"d0\":\"gbgo3qifjng1j88aiar3\"," +
"\"ua\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36\"," +
"\"baiduid\":\"A2AACB419326AE9A7EA5C1538865CF5D:FG=1\"," +
"\"platform\":\"Win32\",\"d23\":0,\"hfe\":\"\",\"d1\":\"\",\"d2\":0,\"d420\":0," +
"\"clientTs\":" + BaseClass.DateTimeToTimestampSeconds(DateTime.Now) + ",\"version\":\"1.4.0.3\"," +
"\"extra\":\"\",\"odkp\":0,\"hf\":\"\",\"d78\":6745,\"h0\":false,\"h1\":0}";
string aesKey = "11115678901234561111567890123456";
string aesIv = "12345678111511111111111133331111";
string encrypted = "";
try
{
AesHelper helper = new AesHelper(aesKey, aesIv);
encrypted = helper.Encrypt(data);
encrypted = BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddHours(-6)) + "_" + BaseClass.DateTimeToTimestampSeconds(DateTime.Now) + "_" + encrypted;
}
catch (Exception ex)
{
}
var cookiesArr = shop.Cookies2.Split(';').Select(s => s.Trim());
string cookies = "";
foreach (var cook in cookiesArr)
{
if (cook.StartsWith("mallid"))
cookies += "mallid=" + shop.ShopId + "; ";
else
cookies += cook + "; ";
}
cookies = cookies.Trim().TrimEnd(';');
HttpWebResponse response = null;
string result;
try
{
string url = _url;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Headers.Add("sec-ch-ua-platform", @"""Windows""");
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36";
request.Accept = "text/event-stream";
request.Headers.Add("sec-ch-ua", @"""Google Chrome"";v=""141"", ""Not?A_Brand"";v=""8"", ""Chromium"";v=""141""");
request.Headers.Add("Acs-Token",data);
request.ContentType = "application/json";
request.Headers.Add("sec-ch-ua-mobile", @"?0");
request.Headers.Add("Origin", @"https://fanyi.baidu.com");
request.Headers.Add("Sec-Fetch-Site", @"same-origin");
request.Headers.Add("Sec-Fetch-Mode", @"cors");
request.Headers.Add("Sec-Fetch-Dest", @"empty");
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br, zstd");
request.Headers.Set(HttpRequestHeader.AcceptLanguage, "zh-CN,zh;q=0.9");
request.Method = "POST";
request.ServicePoint.Expect100Continue = false;
string body = _data;
byte[] postBytes = System.Text.Encoding.UTF8.GetBytes(body);
request.ContentLength = postBytes.Length;
Stream stream = request.GetRequestStream();
stream.Write(postBytes, 0, postBytes.Length);
stream.Close();
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
if (ex.Status == WebExceptionStatus.ProtocolError)
{
response = (HttpWebResponse)ex.Response;
result = GetProxyHtml.ReadResponse(response);
return result;
}
else return ex.Message;
}
catch (Exception e)
{
if (response != null) response.Close();
return e.Message;
}
result = GetProxyHtml.ReadResponse(response);
return result;
}
}
}