webbrowser 如何发送get的数据包?
webbrowser 如果发送这个数据包?
///
post的包 我会 但是 get我还没学会
但是还有一个问题 get 或者post以后 webbrowser浏览器就跳转到 get/post的结果页面 有没有一个办法就是 get/post以后 页面不跳转到 结果页面
就想post页面以后 webbrowser就会跳转到ok的内容就是数据包提交以后的结果 ok
这是 get的数据包
GET /tj/online.php?cmd=stop&appid=117&mid=5548048&time=1335272645109 HTTP/1.1
Accept: */*
Accept-Language: zh-CN
Referer: http://cache.17c.cn/core11/TexasMain04241915901194204.swf
x-flash-version: 11,2,202,233
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
Host: data.boyaa.com
Connection: Keep-Alive
webbrowser 如果发送这个数据包?
///
post的包 我会 但是 get我还没学会
附带post的代码
var
//QQState: integer;
/// QQPath,QQnum,QQPw: string;
SList: TStringList;
PostStr: String;
i: Integer;
PostData,Headers: OleVariant;
begin
SList := TStringList.Create;
try
SList.Add('http://www.idazui.com/user/checkForAjax?pubStrA=tnianshao22&xNum=1&areaCode=0');
/// PostStr := 'QQNumber=' + ComboBox1.Text;
PostStr:= '' ;
Headers := 'Content-Type: application/x-www-form-urlencoded'+ #10#13;
PostData := VarArrayCreate([0, Length(PostStr)-1], varByte);
for i := 0 to Length(PostStr)-1 do begin
PostData[i] := Ord(PostStr[i+1]);
end;
WebBrowser1.Navigate(SList.Strings[0],EmptyParam,EmptyParam,PostData,Headers);
finally
SList.Free;
end;
end;
[解决办法]
首先需要明白,什么样才是GET方式,什么样才是POST方式,假如需要访问http://www.abc.com/a.htm这个页面,并且需要传递param1、param2、param3这三个参数,那么:
- Delphi(Pascal) code
//GET方式WebBrowser1.Navigate('http://www.abc.com/a.html?param1=abc¶m2=def¶m3=ghi');//POST方式FPostData := VarArrayCreate([0,2], varString);FPostData[0] := 'param1=abc';FPostData[1] := 'param2=def';FPostData[2] := 'param3=ghi';WebBrowser1.Navigate('http://www.abc.com/a.htm', EmptyParam, EmptyParam, FPostData);