Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.
Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...
Если данные передаются в формате 'animal=cat&color=brown' и т.д., то попробуйте использовать следующий код:
procedureTDBModule.Navigate(stURL, stPostData: String
; var
wbWebBrowser: TWebBrowser); var
vWebAddr, vPostData, vFlags, vFrame, vHeaders: OleVariant; iLoop: Integer; begin
{Are we posting data to this Url?} if
Length(stPostData)> 0 then
begin
{Require this header information if there is stPostData.} vHeaders:= 'Content-Type: application/x-www-form-urlencoded'+ #10#13#0; {Set the variant type for the vPostData.} vPostData:= VarArrayCreate([0, Length(stPostData)], varByte); for
iLoop := 0 to
Length(stPostData)- 1 do
// Iterate begin
vPostData[iLoop]:= Ord(stPostData[iLoop+ 1]); end
;
// for {Final terminating Character.} vPostData[Length(stPostData)]:= 0; {Set the type of Variant, cast} TVarData(vPostData).vType:= varArray; end;
{And the other stuff.} vWebAddr:= stURL; {Make the call Rex.} wbWebBrowser.Navigate2(vWebAddr, vFlags, vFrame, vPostData, vHeaders); end;
{End of Navigate procedure.}
Автор: Hans Gulo
А это другой способ:
procedureTForm1.SubmitPostForm; var
strPostData: string
; Data: Pointer; URL, Flags, TargetFrameName, PostData, Headers: OleVariant; begin
{ <!-- submit this html form: --> <form method="post" action="http://127.0.0.1/cgi-bin/register.pl"> <input type="text" name="FIRSTNAME" value="Hans"> <input type="text" name="LASTNAME" value="Gulo"> <input type="text" name="NOTE" value="thats it"> <input type="submit"> </form> } strPostData := 'FIRSTNAME=Hans&LASTNAME=Gulo&NOTE=thats+it'; PostData := VarArrayCreate([0, Length(strPostData) - 1], varByte); Data := VarArrayLock(PostData); try
Move(strPostData[1], Data^, Length(strPostData)); finally
VarArrayUnlock(PostData); end
; URL := 'http://127.0.0.1/cgi-bin/register.pl'; Flags := EmptyParam; TargetFrameName := EmptyParam; Headers := EmptyParam;
// TWebBrowser automatically replace // this captions same values WebBrowser1.Navigate2(URL, Flags, TargetFrameName, PostData, Headers); end;