Article View: pl.comp.lang.delphi
Article #345818Re: RestClient, API i wysyłanie POST ze złożonym parametrem
From: Ryszard
Date: Sat, 27 May 2017 06:31
Date: Sat, 27 May 2017 06:31
79 lines
4491 bytes
4491 bytes
jak pisałem wcześniej cały program jest oparty na 4 komponentach i po dodaniu parametrów: temat, treść html, odbiorca wiadomości, załączniki, wysyłane są postem:
function EncodeFile(const FileName: string): AnsiString;
var
stream: TMemoryStream;
begin
stream := TMemoryStream.Create;
try
stream.LoadFromFile(Filename);
result := TNetEncoding.Base64.EncodeBytesToString(Stream.Memory, Stream.Size);
finally
stream.Free;
end;
end;
procedure TForm1.Button9Click(Sender: TObject);
var
jValue:TJSONValue;
begin
try
MemoContent.Lines.Clear;
RESTRequest5.Params[2].Value:='Temat wiadomości';
RESTRequest5.Params[3].Value:=TNetEncoding.URL.Encode('<p>Jeszcze więcej Some HTML..<BR>ĄŻŚŹĆŃŁÓĘ<BR>ążśźćńłóę<BR>.ąść</p>');
with RESTRequest5.Params.AddItem() do
begin
Name:='to[adres_email_odbiorcy_1@wp.pl][message_id]=0.49443700 1495599985@domain.com&to[adres_email_odbiorcy_1@wp.pl][reciver_name]';
Value:='Imie Nazwisko';
Kind:='pkGETorPOST';
end;
with RESTRequest5.Params.AddItem() do
begin
Name:='to[adres_email_odbiorcy_2@wp.pl][message_id]=0.49443700 1495599985@domain.com&to[adres_email_odbiorcy_2@wp.pl][reciver_name]';
Value:='Imie Nazwisko';
Kind:='pkGETorPOST';
end;
with RESTRequest5.Params.AddItem() do
begin
Name:='files[0][name]=plik01.png&files[0][mime]=image/png&files[0][inline]=plik01.png&files[0][content]';
Value:=EncodeFile('D:\pliki\html\newsletter\plik01.png');
Kind:='pkGETorPOST';
Options := [poDoNotEncode];
end;
with RESTRequest5.Params.AddItem() do
begin
Name:='files[1][name]=plik02.png&files[1][mime]=image/png&files[1][inline]=plik02.png&files[1][content]';
Value:=EncodeFile('D:\pliki\html\newsletter\plik02.png');
Kind:='pkGETorPOST';
Options := [poDoNotEncode];
end;
with RESTRequest5.Params.AddItem() do
begin
Name:='files[2][name]=plik03.png&files[2][mime]=image/png&files[2][inline]=plik03.png&files[2][content]';
Value:=EncodeFile('D:\pliki\html\newsletter\plik03.png');
Kind:='pkGETorPOST';
Options := [poDoNotEncode];
end;
RESTRequest5.Execute;
jValue:=RESTResponse5.JSONValue;
MemoContent.Lines.Add(jValue.ToString);
MemoContent.Lines.Add(RESTResponse5.Content);
MemoContent.Lines.Add(RESTResponse5.StatusCode.ToString + ' ' + RESTResponse5.StatusText);
except
on e: Exception do MemoContent.Lines.Add(e.Message);
end;
end;
mogę ci podesłać cały ten projekcik jak chcesz, ale to już chyba mailem
Technical Details
Message-ID:
<a2759aaf-b747-4b20-a03a-c6348fe0f98b@googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!news.glorb.com!67no788839itx.0!news-out.google.com!m134ni3546itb.0!nntp.google.com!67no788836itx.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mailReferences:
<606e1e3f-f1ac-4a46-9a62-41ab5a3698f6@googlegroups.com> <ofugsm$c6k$1@portraits.wsisiz.edu.pl> <b7a9a755-6d54-40e1-8d77-44949789c7ee@googlegroups.com> <95c6e1bb-2244-45dd-a5e9-09478d2f0fc9@googlegroups.com> <98bd180c-2a55-4f9d-9e99-187d4f3eafb5@googlegroups.com> <og98mo$ktn$1@portraits.wsisiz.edu.pl>Show Full Headers
Complete Article Headers
X-Received: by 10.99.135.198 with SMTP id i189mr2738000pge.83.1495866673765; Fri, 26 May 2017 23:31:13 -0700 (PDT) X-Received: by 10.157.13.170 with SMTP id 39mr111618ots.18.1495866673719; Fri, 26 May 2017 23:31:13 -0700 (PDT) Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!news.glorb.com!67no788839itx.0!news-out.google.com!m134ni3546itb.0!nntp.google.com!67no788836itx.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: pl.comp.lang.delphi Date: Fri, 26 May 2017 23:31:13 -0700 (PDT) In-Reply-To: <og98mo$ktn$1@portraits.wsisiz.edu.pl> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=185.93.92.116; posting-account=wPNY2goAAACcLaWlJ166m1yPvd_ji86- NNTP-Posting-Host: 185.93.92.116 References: <606e1e3f-f1ac-4a46-9a62-41ab5a3698f6@googlegroups.com> <ofugsm$c6k$1@portraits.wsisiz.edu.pl> <b7a9a755-6d54-40e1-8d77-44949789c7ee@googlegroups.com> <95c6e1bb-2244-45dd-a5e9-09478d2f0fc9@googlegroups.com> <98bd180c-2a55-4f9d-9e99-187d4f3eafb5@googlegroups.com> <og98mo$ktn$1@portraits.wsisiz.edu.pl> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <a2759aaf-b747-4b20-a03a-c6348fe0f98b@googlegroups.com> Subject: Re: RestClient, API i wysyłanie POST ze złożonym parametrem From: Ryszard <rysiukowalski@wp.pl> Injection-Date: Sat, 27 May 2017 06:31:13 +0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit