zoukankan      html  css  js  c++  java
  • Delphi Cookie获取及使用

    以下方法为网上搜集整理,留做备份,随时更新

    一:通过URL获取

    CanGetIECookie(URL,g_cookie);

    function   CanGetIECookie(const   URL:   string;   var   Cookie:   string):   boolean;
      var
          lpvBuffer:   array[0..1000]   of   byte;
          lpdwBufferLength:   cardinal;
      begin
          lpdwBufferLength   :=   sizeof(lpvBuffer);
          result   :=   InternetGetCookie(PChar(URL),   nil,   @lpvBuffer,   lpdwBufferLength);
          if   result   then
              Cookie   :=   pchar(@lpvBuffer);
      end;

    二:从响应报文中获取

    idc := TIdHTTP.Create(nil);

    for i := 0 to idc.Response.RawHeaders.Count - 1 do
          begin
            tmp := Idc.Response.RawHeaders[i];
            if pos('cookie:', LowerCase(tmp)) = 0 then
              Continue;

            tmp := Trim(Copy(tmp, Pos('Cookie:', tmp) + Length('Cookie:'), Length(tmp)));

            if cookie = '' then
              cookie := tmp
            else
              cookie := cookie + '; ' + tmp;
          end;

    三:通过TWebBrowser 控件获取

    WB_logon: TWebBrowser

    cookie := WB_logon.OleObject.document.cookie;

    将cookie添加至请求中

    var

      idc : TIDHTTP;

    begin

      idc := TIdHTTP.Create(nil);

      idc.Request.CustomHeaders.Add('cookie:' + g_cookie);

    end;

  • 相关阅读:
    JDK6的switch支持不是很好
    团队作业(2)
    团队作业(1)
    4月30日
    重构:改善既有代码的设计有感
    4月28日
    4月27日
    4月26日
    4月25日
    4月24日
  • 原文地址:https://www.cnblogs.com/limingliyu/p/5652008.html
Copyright © 2011-2022 走看看