Files
KJD/TEMUKJD/BLL/_1688HttpResponseBLL.cs
2026-03-18 20:45:32 +08:00

149 lines
10 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.Threading.Tasks;
namespace TemuKJD.BLL
{
public class _1688HttpResponseBLL
{
public static string _1688PostResponse(ShopLoginInfo shop, string _url, string _data, string referer, string cookieStr = "")
{
string cookies = "";
try
{
var cookieLst = JsonHelper.DeserializeJsonToList<CefSharp.Cookie>(shop?.Cookies.ParseToString());
if (cookieLst == null)
cookieLst = new List<CefSharp.Cookie>();
foreach (var cook in cookieLst)
{
cookies += cook.Name + "=" + cook.Value + ";";
}
if (!string.IsNullOrEmpty(cookieStr))
cookies = cookieStr;
}
catch { }
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.Accept = "application/json";
request.Headers.Add("sec-ch-ua", @"""Not)A;Brand"";v=""8"", ""Chromium"";v=""138""");
request.ContentType = "application/x-www-form-urlencoded";
request.Headers.Add("sec-ch-ua-mobile", @"?0");
request.Headers.Add("Origin", @"https://air.1688.com");
//request.Headers.Set(HttpRequestHeader.Cookie, @"arms_uid=a58d9d64-aa66-4a78-aa87-4de3175197ff; mtop_partitioned_detect=1; x5sectag=144389; leftMenuLastMode=EXPEND; cna=erU/IgGo8H0CAXVHNph3HiUA; xlly_s=1; leftMenuModeTip=shown; x5sec=7b22733b32223a2238353662363032366538363632383037222c22617365727665723b33223a22307c4350714f34383047454b3774327551424967706a5958427a62476c6b5a5859794d494351694a7742227d; cookie1=URoqgBzQ20SrVy1cn1dmknRZMiZQrf567IApLWd2hMI%3D; cookie2=1271c47e018b2f0f362e801b004dd90d; cookie17=VAiTSxHZ%2BTEw; sgcookie=E100j64PT2aTop2IQP8xMMnqcQabEEoQQ%2BBtscrD4dLlLFaj9jE4FMFCyHMuXDWv1JA0rqeei5aWTZp%2BfsMEVSaLPOucnM9Tty%2FOHSfqykHeWKv8mKPEhheDua6WJ2Y9JaC8; t=310a85e84cc926e19c722aa92c8884af; _tb_token_=763e3b10683ee; sg=r13; csg=07b5d3ed; lid=lord_darthvader; unb=794184311; uc4=nk4=0%40De%2FIKVy6P8cTMgRdynX8Fy0qzX%2B8KMNjTYU%3D&id4=0%40VhEEQOCV0%2FJni%2FiaAdHv%2F6qh6AU%3D; _nk_=lord_darthvader; _csrf_token=1773717425399; __cn_logon__=true; __cn_logon_id__=lord_darthvader; __last_loginid__=b2b-7941843117d583; __last_memberid__=b2b-7941843117d583; last_mid=b2b-7941843117d583; _m_h5_tk=c3acdfd37c7b7b6bf1474092458e4123_1773727866169; _m_h5_tk_enc=aefb20cb0e84cef37176df025b1f4912; taklid=ea5e2073c0cb4d139018c3cdc2d0ce0f; x5sec=7b22733b32223a2231346564663864343863636235613264222c22617365727665723b33223a22307c4350575134383047454f6e6a322f54342f2f2f2f2f774561437a63354e4445344e444d784d5473794967706a5958427a62476c6b5a5859794d4a374236726345227d; _user_vitals_session_data_={""user_line_track"":true,""ul_session_id"":""atmxc5zzna9"",""last_page_id"":""air.1688.com%2Fymmyy2ozq6a""}; tfstk=gBcn7uGsBvyIgYSwigPBCwq1g59TAWN7o0C827EyQlr6R2e-z5WaRyyr9W3Kj70SzklKwpMoEmnaLYLQTu5o24hK2WkKEzmx88o822LlRfmcw6KBd45uw7-vDIdxRwF7anU8XU_AArzY8QUU4RPQySE1ZvAxR2_N-g8xQIdlu67OLTrr45ralzPPTuyeSRzYz75UU6WNblaza7yz815akzzU8kreSVr_r7zUa_8g_lauauozaF0ZhPfzmbls_njPA1S-JUg3-Jqq8kuKRf54X9gajPPs6y0iO2W5a_lg-JGGaM3sJJHrl-GKTQf_9qDa_PGJf6roQr08sbxC9uNUl-MYIM8QJYusUkGDqsqEOAcu6j-5MmmKbjF-TUBi08qnQXyGz_PTtAmoESSw5yHr5YrIi3f0YXgiH8DBmtiqWqhQCbxcbuMLl5zswh1UqAzP4DWN372lNP8-_T67LPagD7GEZ1yNzGnpSFXXdJz_JnLMST67LPagDFYGhMwU5yKA.; isg=BNrackIhZ23LAevB06-DTTNPK4D8C17lbsS8YuRPhmxiV36RzZlX977hJyNLh9Z9");
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 = "https://air.1688.com/app/channel-fe/search/index.html?spm=a21vf6.home.0.0";
request.Referer = referer;
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate");
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 _1688GetResponse(ShopLoginInfo shop, string _url, string referer, string appVersion = null)
{
string cookies = "";
try
{
var cookieLst = JsonHelper.DeserializeJsonToList<CefSharp.Cookie>(shop?.Cookies.ParseToString());
if (cookieLst == null)
cookieLst = new List<CefSharp.Cookie>();
foreach (var cook in cookieLst)
{
cookies += cook.Name + "=" + cook.Value + ";";
}
}
catch { }
HttpWebResponse response = null;
string result;
try
{
string url = _url;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.KeepAlive = true;
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.Set(HttpRequestHeader.Cookie, @"mtop_partitioned_detect=1; leftMenuLastMode=EXPEND; cna=erU/IgGo8H0CAXVHNph3HiUA; xlly_s=1; leftMenuModeTip=shown; cookie1=URoqgBzQ20SrVy1cn1dmknRZMiZQrf567IApLWd2hMI%3D; cookie2=1271c47e018b2f0f362e801b004dd90d; cookie17=VAiTSxHZ%2BTEw; sgcookie=E100j64PT2aTop2IQP8xMMnqcQabEEoQQ%2BBtscrD4dLlLFaj9jE4FMFCyHMuXDWv1JA0rqeei5aWTZp%2BfsMEVSaLPOucnM9Tty%2FOHSfqykHeWKv8mKPEhheDua6WJ2Y9JaC8; t=310a85e84cc926e19c722aa92c8884af; _tb_token_=763e3b10683ee; sg=r13; csg=07b5d3ed; lid=lord_darthvader; unb=794184311; uc4=nk4=0%40De%2FIKVy6P8cTMgRdynX8Fy0qzX%2B8KMNjTYU%3D&id4=0%40VhEEQOCV0%2FJni%2FiaAdHv%2F6qh6AU%3D; _nk_=lord_darthvader; _csrf_token=1773717425399; __cn_logon__=true; __cn_logon_id__=lord_darthvader; __last_loginid__=b2b-7941843117d583; __last_memberid__=b2b-7941843117d583; last_mid=b2b-7941843117d583; _user_vitals_session_data_={""user_line_track"":true,""ul_session_id"":""atmxc5zzna9"",""last_page_id"":""air.1688.com%2Fwpga7o124t""}; mtop_partitioned_detect=1; _m_h5_tk=1ba79123dd95e615df41b434818e21f0_1773822327146; _m_h5_tk_enc=b2d00bd8d3da4b7cd215b01f217cac49; isg=BJ6eJ-Upe3MYS68Vv_sPwVdT7zTgX2LZSmh4Vkgnj-HIaz9FsO0l6RVNY3fn01rx; tfstk=gb2ZSxwQOOBZRn_u4uDVUwts8jDt3x7Ws-gjmoqmfV0G65G0TmiWoEqcWryq-rujlAb90xzUR5Mbjip48o4PXm_ThyW48zV6lo2jm-zKIjFslVgq3oUPAa65FlEtHfb5PTMaTT9ieIAmSEG3xcMqjSkKuOEtHxbBAKf5UlU1ftY-ommhYmivnc4msBmnc2mmjK4m-XmoVFDmnrjEtmmJoI0iSH0nq20mnx4mxMox-cDmnrqhYmHntlqDL0GGjTF0Mq7IQfuuj2JzvJoG14W--KbLKcrEllxvnK2EbfeehjlqZfN02be_ItJKCuPnKDefJd04t0rjL-79CqHi2bFSTFjtfSqLiVePuLugBWyqd8bvFzz_-8MbIiOUrjuatRcemKDIQWz4gYYhvcN0vS0TUZJrSREUNjPOzQUuAuwt9-7y-qFs2vmLhwpiuWmc4WYxx4DgH58DgfmKY4sFYj73VQD3I1B6MIhneDu5fcOvMfmKY4sFYIdxt0nEPGi1.");
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, zstd");
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate");
request.Headers.Set(HttpRequestHeader.AcceptLanguage, "zh-CN,zh;q=0.9");
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;
}
}
}