今晚花了很长时间,到处搜索~~弄了很多东西~~总结一下先~!
从webbrowsers说起:
wb1.Navigate("http://hi.baidu.com");跳转到这个页面
wb1.OleObject.document.getElementByID('username').innerText:='fatkun';//如果知道ID
wb1.OleObject.document.getElementsByTagName('input').item(0).click;//如果知道第几个按钮
wb1.OleObject.document.all.item('userlogin', 0).click;//如果知道NAME
用webbbrowsers取得cookies
首先,要加入 uses MSHTML;
var Doc:IHTMLDocument2;
begin
Doc:=wb1.Document as IHTMLDocument2;
Doc.cookie;//这个就是cookies了。。
end;
更详细可以参考了万一老师的博客文章:WebBrowser 操作记要
IDHTTP:
//这里POST的具体数据,你可以使用WinSock Expert抓包来获取,然后每一项加在TSTRINGS里面发出去就可以了。
procedure TForm1.btn5Click(Sender: TObject);//测试登陆DISCUZ6.0,6.1都成功!
var
ts:TStrings;
str:string;
begin
ts:=TStringList.Create;
ts.Add('formhash=8');
ts.Add('cookietime=2592000');
ts.Add('loginfield=username');
ts.Add('username=你的用户名');
ts.Add('password=你的密码');
ts.Add('userlogin');
str:=IdHTTP1.Post('http://bbs.focusmobile.cn/logging.php?action=login&loginsubmit=true',ts);
mmo1.Text:=str;
end;
在IdCookieManager1中取得cookies,当然要设置
IdHTTP1.CookieManager:=IdCookieManager1;
for i := 0 to IdCookieManager1.CookieCollection.Count - 1 do
cookieStr:=cookieStr+(IdCookieManager1.CookieCollection.Items[i].CookieText);
取得cookies有什么用呢?当然有用啦.
拿到cookies后,我们可以把cookies赋值给另一个idhttp
idHttp2.Request.CustomHeaders.Text := 'Cookie: '+cookieStr;
分享到:
相关推荐
本示例聚焦于Delphi7环境下使用Indy库中的IDHTTP组件实现六种不同的POST方法。IDHTTP是Indy提供的一款强大的HTTP客户端组件,它允许开发者发送各种HTTP请求,包括GET、POST等。 首先,我们来详细解释POST方法。POST...
本文将深入探讨IDHTTP组件在POST请求中的8种使用方法,帮助开发者更好地理解和利用这个强大的工具。 1. **基本POST请求** IDHTTP组件最简单的POST请求可以通过设置其 `Method` 属性为 `htPost`,然后调用 `Execute...
本教程将详细阐述IDHTTP组件进行POST请求的8种不同方法,每种方法都有其特定的用途和适用场景。下面,我们将逐一介绍这些方法,并提供源码示例。 1. **基本POST请求** 最简单的POST请求可以通过设置IDHTTP的...
使用IdHttp下载文件并显示下载进度条,下载进度采取windows消息通知的方式来显示
1. **HTTP请求与响应**:`IDHTTP.Get()`方法用于发送GET请求到指定URL并返回响应的HTML代码。你需要确保URL的正确性,并处理可能的错误状态码,例如404(未找到)、500(服务器内部错误)等。 2. **多线程**:为了...
6. `说明 - 怪才csdn博客.url`: 这是一个链接,指向了CSDN博客上的一篇文章,详细解释了`TIdHTTP`组件的`GET`方法的使用。 通过这些文件,开发者可以学习如何在Delphi项目中集成和使用`TIdHTTP`组件,以及如何处理...
标题 "idhttp 使用代理访问" 暗示了这是一个关于在 Delphi 开发环境中使用 Indy HTTP 客户端组件通过代理服务器进行网络访问的主题。Indy 是一个流行的开源网络组件库,广泛用于 Delphi 和 C++Builder 开发者中,...
本篇文章将详细探讨Delphi第三方组件Indy中的`TIdHTTP`如何使用POST方法进行网络请求。 首先,`TIdHTTP`是Indy库中的一个核心组件,它负责处理HTTP协议的各种操作,如GET、POST、PUT等。在Delphi中,我们可以直接在...
要使用IdHTTP,首先需要在工具箱中找到它,然后将其拖放到Form上。接着,我们可以设置它的各种属性,如Host(目标服务器地址)和Request.Method(HTTP方法,如'GET'或'POST')。 对于Cookie操作,有两个关键属性是`...
3. 发送请求:完成报头设置后,可以使用IdHTTP的Get、Post、Put等方法发送HTTP请求。例如,发送GET请求: ```delphi Response := IdHTTP.Get('http://example.com'); ``` 读取HTTP响应报头: 1. 获取响应:在发送...
在本示例中,我们探讨了如何在 Delphi XE8 中使用 IDHTTP1.get() 方法从一个基于 Servlet 3.1 的服务器获取 JSON 数据。这个过程涉及到 Delphi 客户端与 Java 服务端之间的通信,其中 JSON 用于数据交换格式。以下是...
下面将详细解释如何使用Delphi的IDHTTP组件进行循环POST操作。 首先,我们需要了解IDHTTP组件的基本用法。在Delphi中,打开一个新的VCL Forms应用程序,然后从Tool Palette的Internet类别中拖一个IDHTTP组件到Form...
总之,`IdHTTP`控件在Delphi XE中是进行HTTP通信的强大工具,通过POST方法可以方便地向服务器发送数据,这对于Web服务调用、API交互等应用场景非常有用。熟练掌握`IdHTTP`的使用,将极大地提升你的Delphi应用的网络...
RESTCLIENT文件可能是一个单元或者类,它包装了IDHTTP组件,提供了更高级别的接口,如`PostDataToServer`方法,以便在不同的场景下使用。 总结,Delphi中的REST与IDHTTP组件结合使用,使得开发人员能够轻松地向...
描述中提到的"Idhttp Post 或者 Get SSL网站都会出错",暗示了在尝试使用IDHTTP组件执行POST或GET方法访问HTTPS网站时可能遇到了错误。这可能是由于缺少必要的DLL文件导致的。DLL(Dynamic Link Library)文件是...
在Delphi中,你可以通过以下步骤来使用IdHTTP: 1. **添加IdHTTP组件**:首先,在Delphi的Form设计器中,从“Internet”类别中拖放一个IdHTTP组件到表单上。这会将该组件添加到你的工程中,使你可以通过代码访问它...
4. 调用IDHTTP组件的`Get`或`Post`方法时,添加`http(s)://`前缀以指示使用HTTP或HTTPS协议。 在开发过程中,可能还会遇到证书验证、错误处理等问题。对于证书验证,可以通过设置`SSLOptions`的`VerifyFlags`和`...
1. **IDHTTP组件的使用**:IDHTTP组件是Delphi Indy库中的核心组件之一,用于发起HTTP请求。通过设置其属性,如Host(目标服务器地址)、Port(端口号)、Request.Method(HTTP方法,如GET或POST)等,可以定制HTTP...
在"IdHTTP1postget下载.rar"这个压缩包文件中,我们很显然关注的是如何使用`IdHTTP`组件执行POST和GET请求来实现文件的下载。 GET和POST是HTTP协议中最常见的两种方法。GET用于获取服务器上的资源,而POST则常用于...
根据需求,使用`idHttp.Get`或`idHttp.Post`方法发送请求。 3. **数据交换**:服务器端的事件处理器会接收到客户端的请求,并可以读取请求体中的数据。同样,客户端也可以通过`idHttp`组件的响应属性获取服务器返回...