国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Delphi > 正文

delphi 將webbrowser的cookie給idhttp用

2019-11-08 02:06:38
字體:
來源:轉載
供稿:網友

      最近開發需要向網站進行數據抓包等,先用webbrowser請求網頁,獲取元素取值后再用idhttp向網頁進行get操作。因為涉及到驗簽、登錄等,一直不成功,后來用網絡數據抓包工具發現在用webbrowser和IDhttp請求時數據相同,只是cookie不同。

1、數據抓包設置cookie: Set-Cookie: JsessionID=4nLLYm1XrVtMWJL5VvG2y13RyXJbvhv2kth3SJ5hGpbL7Jv4ZTQk!1183038173!NONE; path=/; HttpOnly

2、webbrowser請求時的Cookie: JSESSIONID=QTnTYq6QyCvCBdyhtBRLP4K4WLzxGQ2LCSbDSNBF8zKDPqt1WMDJ!1003383531!-543092864; http:xxxxxxx=3071348908.44105.0000

3、idhttp請求時的Cookie:  http:xxxxxxx=3071348908.44105.0000。

       原來(CookieWEB.document as ihtmldocument2).cookie是無法獲取webbrowser的所有cookie的,需要借助"'wininet.dll"才能獲取完整的cookie,然后賦值給idhttp就可以成功了。

function GetCookie(url: string): string;const  INTERNET_COOKIE_HTTPONLY     = $00002000;  INTERNET_COOKIE_THIRD_PARTY  = $00000010;  INTERNET_FLAG_RESTRICTED_ZONE= $00020000;var  hModule:THandle;  InternetGetCookieEx:function(lpszUrl, lpszCookieName,lpszCookieData: PChar; var lpdwSize: DWord;dwFlags:DWORD;lPReserved: Pointer): BOOL;StdCall;  CookieSize:DWORD;  cookiedata:PWideChar;  thebool:bool;begin  result := '';  hModule:=GetModuleHandle('wininet.dll');  if hModule<>0 then  begin    @InternetGetCookieEx:=GetProcAddress(hModule,'InternetGetCookieExW');    if @InternetGetCookieEx<>nil then    begin      CookieSize:=10240;      Cookiedata := AllocMem(CookieSize);      thebool:=InternetGetCookieEx(PWideChar(url),nil,CookieData,CookieSize,INTERNET_COOKIE_HTTPONLY,nil);      if thebool then result := CookieData;      FreeMem(Cookiedata);    end;    FreeLibrary(hModule);  end;end;


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 宁安市| 游戏| 铜梁县| 商水县| 东台市| 华坪县| 科技| 喀什市| 财经| 彩票| 岑巩县| 镇康县| 阳山县| 宁津县| 修文县| 宁阳县| 昔阳县| 南木林县| 芦溪县| 福海县| 保康县| 饶阳县| 武隆县| 深水埗区| 巩义市| 平利县| 鹤岗市| 阳朔县| 西和县| 崇文区| 准格尔旗| 天镇县| 仙居县| 监利县| 德州市| 赤峰市| 古蔺县| 松江区| 寻甸| 西峡县| 客服|