SMTP mail

Ik ben nieuw in deze materie en ik denk dat ik iets vitaals mis...

In mijn website in aanbouw heb ik een php die een standaardmail moet verzenden. De URL naar deze php is :"https://exentryc.be/SendSMTPMail.php?to=info@exentryc.be&subject=Delphi"

Wanneer ik deze ingeef, rechtstreeks in mijn browser, wordt de mail netjes verzonden, zoals het hoort.

Wanneer ik deze test met PostMan, wordt de mail eveneens netjes verzonden.

Wanneer ik onderstaande Delphi code uitvoer met Command := httpPost, dan krijg ik een error 405 terug ?

Wanneer ik dezelfde Delphi code uitvoer met Command := httpGet, dan krijg ik een HTML (???) response terug met als boodschap "Your browser does not support JavaScript".

Ik begrijp er niets van ... kan u mij op weg helpen om dit op te lossen aub?....

procedure TForm1.doSendSMTPMail(pTo, pSubject, pBody: string);
var
isObject: TJSONObject;
isArray: TJSONArray;
MailResult: TJSXMLHttpRequest;
MailRequest: TWebHttpRequest;
FullUrl: string;
Returned: string;
tmpint: integer;
begin
MailRequest := TWebHttpRequest.Create(self);
try
chkExists.Checked := False;
MailRequest.OnError := MailError;
MailRequest.OnRequestResponse := MailRequestResponse;
MailRequest.Command := httpGet;
MailRequest.TimeOut := 10000;
MailRequest.Headers.Clear;
FullUrl := 'https://exentryc.be/SendSMTPMail.php?to=info@exentryc.be&subject=Delphi';
try
MailResult := await(TJSXMLHttpRequest, MailRequest.Perform());
Memo.lines.Add('HTTP Status: ' + IntToStr(MailResult.Status));
Memo.lines.Add('Status Text: ' + MailResult.StatusText);
if MailResult.Status <> 200 then
begin
Memo.lines.Add('Fout bij het verzenden van de e-mail.');
Exit;
end;
Memo.lines.Add('Response: ' + MailResult.responseText);
except
on E: Exception do
begin
Memo.lines.Add('Fout in except-blok: ' + E.Message);
end;
end;
except
on E: Exception do
begin
Memo.lines.Add('Fout bij het verzenden van de aanvraag: ' + E.Message);
if Assigned(MailResult) then
begin
Memo.lines.Add('MailResult responseText: ' + MailResult.responseText);
end;
end;
end;
end;

met dank,
Marc Georges

  1. You assign FullURL but nowhere you assign MailRequest.URL
  2. When assigning MailRequest.URL and performing a HTTPS POST request, we get:

Access to fetch at 'https://exentryc.be/SendSMTPMail.php?to=info@exentryc.be&subject=Delphi' from origin 'http://localhost:8000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

so, you need to enable CORS on this endpoint.