大佬教程收集整理的这篇文章主要介绍了delphi – Http Post with indy,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
这是我的代码与Indy,但是绝对不会工作,我无法弄清楚我没有正确的做法.如何查看我在服务器上发送的是否有这样的工具?
procedure TForm1.btn1Click(Sender: TObject); var fname : String; MS,dump : TMemoryStream; http : TIdhttp; const CRLF = #13#10; begin if PromptForFilename(fname,'',falsE) then begin MS := TMemoryStream.Create(); Ms.LoadFromFile(fName); dump := TMemoryStream.Create(); http := TIdhttp.Create(); http.request.ContentType:='multipart/form-data;boundary =-----------------------------7cf87224d2020a'; fname := CRLF + '-----------------------------7cf87224d2020a' + CRLF + 'Content-Disposition: form-data; name=\"uploadedfile\";filename=\"test.png"' + CRLF; dump.Write(fname[1],Length(fName)); dump.Write(Ms.Memory^,Ms.SizE); fname := CRLF + '-----------------------------7cf87224d2020a--' + CRLF; dump.Write(fname[1],Length(fName)); Showmessage(IntToStr(dump.SizE)); Ms.Clear; try http.request.Method := 'POST'; http.Post('http://posttestserver.com/post.php',dump,MS); Showmessage(PAnsiChar(Ms.Memory)); Showmessage(IntToStr(http.ResponseCodE)); except Showmessage('Could not bind socket'); end; end; end;
procedure TForm1.SendPostData; var Stream: TStringStream; Params: TIdMultipartFormDataStream; begin Stream := TStringStream.Create(''); try Params := TIdMultipartFormDataStream.Create; try Params.AddFile('File1','C:\test.txt','application/octet-stream'); try http.Post('http://posttestserver.com/post.php',Params,Stream); except on E: Exception do Showmessage('Error encountered during POST: ' + E.messagE); end; Showmessage(Stream.DataString); finally Params.Free; end; finally Stream.Free; end; end;
以上是大佬教程为你收集整理的delphi – Http Post with indy全部内容,希望文章能够帮你解决delphi – Http Post with indy所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。