Delphi使用TIdhttp发送Cookie的例子,是模拟发送,当使用TIdHttp执行网络请求时模拟cookie值发送到服务器端。思路是先用一个for循环删除原来的cookie值,然后再使用Request.CustomHeaders.Add方法创建cookies:
01 |
uses StrUtils; |
02 |
procedure TForm1 . Button1Click(Sender: TObject); |
03 |
var |
04 |
J: Integer ; |
05 |
HtmlStr: string ; |
06 |
begin |
07 |
//删除原有cookie值 |
08 |
for J := IdHTTP1 . Request . CustomHeaders . Count - 1 downto 0 do begin |
09 |
if StartsText( 'cookie:' , IdHTTP1 . Request . CustomHeaders[J]) then |
10 |
IdHTTP1 . Request . CustomHeaders . Delete(J); |
11 |
end ; |
12 |
IdHTTP1 . Request . CustomHeaders . Add( 'Cookie: username=bcoder' ) ; |
13 |
//下面的方法也可实现,不过没测试过 |
14 |
//IdHTTP1.Request.CustomHeaders.Values['cookie'] := 'username=bcoder'; |
15 |
HtmlStr := IdHTTP1 . Get( 'http://www.baidu.com' ); |
16 |
end ; |
TIdhttp的一个属性,AllowCookies,当此值为False时允许用户发送自定义的cookie,当此值为True时,不允许用户发送自定义的cookie。
此文章由 http://www.ositren.com 收集整理 ,地址为: http://www.ositren.com/htmls/69842.html